Chinaunix首页 | 论坛 | 博客
  • 博客访问: 288181
  • 博文数量: 95
  • 博客积分: 618
  • 博客等级: 中士
  • 技术积分: 455
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-28 13:39
文章分类

全部博文(95)

文章存档

2015年(65)

2013年(1)

2012年(10)

2011年(19)

分类: C/C++

2015-06-28 20:45:07


点击(此处)折叠或打开

  1. #include<stdio.h>

  2. typedef struct m {
  3.   int a;
  4.   int b;
  5. } teststr;

  6. int func_i(teststr *p)
  7. {
  8.   printf(" %s %d %d \n",__func__, p->a,p->b);
  9.   return 0;
  10. }

  11. int func_2(teststr str)
  12. {
  13.   printf(" %s %d %d \n",__func__, str.a,str.b);
  14.   return 0;
  15. }

  16. int func_3(teststr *p)
  17. {
  18.   printf(" %s \n",__func__);
  19.   func_2(*p);
  20.   return 0;
  21. }

  22. int func_4(teststr str)
  23. {
  24.   printf(" %s \n",__func__);
  25.   func_i(&str);
  26.   func_2(str);
  27.   return 0;
  28. }

  29. int func_5(teststr &str)
  30. {
  31.   printf("== %s %d %d \n",__func__, str.a,str.b);
  32.   func_i(&str);
  33.   func_2(str);
  34.   return 0;
  35. }

  36. int main(){

  37.     teststr Str;
  38.     Str.a = 10;
  39.     Str.b = 99;
  40.     teststr *ptr = (teststr *)malloc(sizeof(teststr));
  41.     ptr->a=20;
  42.     ptr->b=40;

  43.     func_i(&Str);
  44.     func_2(Str);
  45.     func_3(&Str);
  46.     func_4(Str);
  47.     func_5(Str);
  48.     printf("=========================\n");
  49.     func_i(ptr);
  50.     func_2(*ptr);
  51.     func_3(ptr);
  52.     func_4(*ptr);
  53.     func_5(*ptr);
  54.     return 0;
  55. }


阅读(1224) | 评论(0) | 转发(0) |
0

上一篇:vi的配置

下一篇:C++深拷贝与浅拷贝

给主人留下些什么吧!~~