永发信息网

C语言 函数调用小问题。。。

答案:2  悬赏:0  手机版
解决时间 2021-05-25 08:02
  • 提问者网友:嘚啵嘚啵
  • 2021-05-25 02:08
我是刚学C语言的菜鸟,看到一习题:

1、定义一个函数increment,它的作用是把传进来的参数加1。例如:
void increment(int x){ x = x + 1;}int main(void){ int i = 1, j = 2; increment(i); increment(j); return 0;}
我们在main函数中调用increment增加变量i和j的值,这样能奏效吗?为什么?

编译后发现I,J的值未改变,不知道原因。。。请行家指点。。。还请说一下利用函数调用怎么样实现I,J的增量。谢谢。。。
最佳答案
  • 五星知识达人网友:山河有幸埋战骨
  • 2021-05-25 03:23


int increment(int x)



{ return x = x + 1;}


int main(void)
{
int i = 1, j = 2;



i=increment(i);
j=increment(j);
return 0;
}

全部回答
  • 1楼网友:往事埋风中
  • 2021-05-25 03:36
哈哈,自然是不会变了,这是值传递,也就是将数值传给被调函数,要实现通过函数调用改变主调函数的变量值,要用数组传递或指针传递
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯