在C语言中,可以使用以下两种方法调用子函数:
- 值传递(Call by Value):将实参的值复制给形参,子函数中对形参的修改不会影响实参的值。
// 声明子函数 void func(int); // 调用子函数 int main() { int num = 10; func(num); // 将num的值传递给形参 return 0; } // 实现子函数 void func(int num) { // 对num进行操作 }
- 地址传递(Call by Reference):将实参的地址传递给形参,子函数中对形参的修改会影响实参的值。
// 声明子函数 void func(int*); // 调用子函数 int main() { int num = 10; func(&num); // 将num的地址传递给形参 return 0; } // 实现子函数 void func(int* ptr) { // 对ptr指向的值进行操作 }
需要注意的是,通过地址传递可以更方便地对实参进行修改,但需要注意传递的地址是否有效,以避免潜在的错误。