c 指针相关

来源:互联网 发布:淘宝3c标志图片 编辑:程序博客网 时间:2024/05/22 09:40
1. c语言中 函数参数只作用于函数内部,
#include <stdio.h>void test_func_ptr (int a){printf ("%d \n", a);a = 100;printf ("%d \n", a);}int main (void){int c = 10;test_func_ptr (c);printf ("%d \n",c);return 0;}

这个输出的结果 为10,100,10. 造成这个的原因是进入函数是会开辟新的内存在栈中,在函数执行完成后会弹出,但是原来mian中额c值并不会变化。如果要对c施加影响需要传入指针,例子如下

#include <stdio.h>void test_func_ptr (int *a){printf ("%d \n", *a);a = 100;printf ("%d \n", *a);}int main (void){int c = 10;test_func_ptr (&c);printf ("%d \n",c);return 0;}


基本上可以通俗的理解为,顺藤摸瓜,再给瓜一刀,之后瓜上就一直有这么一刀了。

0 0
原创粉丝点击