[C] 指针与引用参数传递以及函数指针问题 →→→→→进入此内容的聊天室

来自 , 2019-03-15, 写在 C, 查看 147 次.
URL http://www.code666.cn/view/7993e112
  1. //例1
  2. #include<iostream>
  3. using namespace std;
  4. void change(int *a,int &b,int c)
  5. {
  6.         c=*a;
  7.         b=3;
  8.         *a=2;
  9. }
  10. int main()
  11. {
  12.         int a=1,b=2,c=3;
  13.         change(&a,b,c);
  14.         cout<<a<<b<<c<<endl;
  15.         return 0;
  16. }
  17. //输出结果是:2 3 3
  18. //a是指针,修改它的内容也就修改了它的值;
  19. //b是引用,不存在副本,故修改它的内容,值也会跟着改变;
  20. //C传的是值,在函数体内被修改,但没有返回值,所以不改变.。
  21.  
  22.  
  23. //例2:利用函数指针判断三个数的大小    
  24. #include<stdio.h>
  25. int max(int x,int y)
  26. {
  27.         return (x>y?x:y);
  28. }
  29. int main()
  30. {
  31.         int max(int ,int);
  32.         int (*p)(int,int)=&max;
  33.         int a,b,c,d;
  34.         printf("请输入3个整数:\n");
  35.         scanf("%d %d %d",&a,&b,&c);
  36.         d=(*p)((*p)(a,b),c);
  37.         printf("最大值是:%d\n",d);
  38.         return 0;
  39. }

回复 "指针与引用参数传递以及函数指针问题"

这儿你可以回复上面这条便签

captcha