C语言指针问题,我这两种写法为什么输出一样?这个是指针的,这种写法我懂. 这种写法我函数没定义成指针啊,不是应该不进行传参么.应该输出的是10,0,30,40,啊为什么输出的是10,20,40,40?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 02:18:43
C语言指针问题,我这两种写法为什么输出一样?这个是指针的,这种写法我懂. 这种写法我函数没定义成指针啊,不是应该不进行传参么.应该输出的是10,0,30,40,啊为什么输出的是10,20,40,40?

C语言指针问题,我这两种写法为什么输出一样?这个是指针的,这种写法我懂. 这种写法我函数没定义成指针啊,不是应该不进行传参么.应该输出的是10,0,30,40,啊为什么输出的是10,20,40,40?
C语言指针问题,我这两种写法为什么输出一样?

这个是指针的,这种写法我懂.
 

这种写法我函数没定义成指针啊,不是应该不进行传参么.应该输出的是10,0,30,40,啊为什么输出的是10,20,40,40?

C语言指针问题,我这两种写法为什么输出一样?这个是指针的,这种写法我懂. 这种写法我函数没定义成指针啊,不是应该不进行传参么.应该输出的是10,0,30,40,啊为什么输出的是10,20,40,40?
第一个输出的也不是10,0,30,40;第一个输出的是20,10,40,40;
我先给你分析第一个
主函数里面里对应着看 是这样赋值的
第一次调用exc函数:
X1=X3=10;
X3=X4=20;
X4=X1=10;
第二次调用exc函数:
X1=X2=40;
X2=x1=40;
x1=x1=40;
输出来X3,X4,X1,X2为:20,10,40,40;
建议你写函数不要在在外面定义变量在里面使用
第二个没时间看了 对于数值交换的那个用指针或者引用
函数调用中发生的数据传送是单向的.即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参. 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化.没有用指针不涉及到地址 所以你第二个调用函数对结果没影响