在C语言中,函数的参数和返回值的传递方式有两种:值传递和指针传递。
值传递和指针传递初学者总会有一种朦胧的感觉,所以建议把指针传递的概念摸透,才能熟练应用。
值传递示例:x其实是n的一份临时拷贝,所以并不会改变n的值。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stdio.h> #include <windows.h> void Fun( int x) { x = 1; } int main() { int n = 2; Fun(n); printf ( "%d\n" ,n); system ( "pause" ); return 0; } |
程序结果:
指针传递:这个地方可以理解为函数在被调用的时候n把地址给了x,它们都是同一个内存地址,所以x改变就随着变化。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stdio.h> #include <windows.h> void Fun( int *x) { *x = 1; } int main() { int n = 2; Fun(&n); printf ( "%d\n" ,n); system ( "pause" ); return 0; } |
程序结果:
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/quinn0918/article/details/67640677