在C语言中,disp
函数的参数传递方式取决于函数的定义
#include<stdio.h>
void disp(int a) {
printf("Value of a inside the function: %d\n", a);
}
int main() {
int x = 10;
disp(x); // 传递x的副本
printf("Value of x after calling the function: %d\n", x);
return 0;
}
#include<stdio.h>
void disp(int *a) {
printf("Value of a inside the function: %d\n", *a);
*a = 20; // 修改实参的值
}
int main() {
int x = 10;
disp(&x); // 传递x的地址
printf("Value of x after calling the function: %d\n", x);
return 0;
}
#include<stdio.h>
void disp(int **a) {
printf("Value of a inside the function: %d\n", **a);
**a = 20; // 修改指针所指向的值
}
int main() {
int x = 10;
int *ptr = &x;
disp(&ptr); // 传递指向x的指针的地址
printf("Value of x after calling the function: %d\n", x);
return 0;
}
请注意,这些示例仅适用于整数类型。对于其他数据类型,只需相应地更改函数参数和变量类型即可。