C语言函数传递数组和传递地址的区别你知道吗

Angie ·
更新时间:2024-11-10
· 1612 次阅读

目录

传递数值

传递地址

注:

总结

传递数值

code:

#include <stdio.h> void deliveryData(int data) { data = data + 100; printf("deliveryData:data=%d\n", data); } int main(void) { int data=10; deliveryData(data); printf("main:data=%d\n", data); return 0; }

运行结果:

C:\Users\Administrator\Desktop\C_Study\新版本c语言\程序\unit5_function>a.exe
deliveryData:data=110
main:data=10

传递地址

code:

#include <stdio.h> void deliveryData(int data[])//这里int data[]是地址(相当于指针) { data[0] = data[0] + 100; printf("deliveryData:data=%d\n", data[0]); } int main(void) { int data[2]={1, 2}; deliveryData(data);//这里传递的是地址 printf("main:data=%d\n", data[0]); return 0; }

运行结果:

C:\Users\Administrator\Desktop\C_Study\新版本c语言\程序\unit5_function>a.exe
deliveryData:data=101
main:data=101

注:

传递数值,操作的是不同的内存空间传递地址,操作的是同个内存空间

总结

本篇文章就到这里了,希望能够给你带来帮助也希望您能够多多关注软件开发网的更多内容!



函数 c语言函数 地址 C语言 数组

需要 登录 后方可回复, 如果你还没有账号请 注册新账号