问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言函数及指针问题.

发布网友 发布时间:9小时前

我来回答

5个回答

热心网友 时间:6小时前

这个理解起来其实很简单
只要记住一点,实参和形参不在一个内存地址中就可以,改变形参不会改变实参的
但是有一个例外,就是在声明子函数是,参数带&,这表示实参形参公用一个内存地址

在调用x1函数时,i j会另外申请内存地址,那么交换了ij,但是ab所在的内存地址的内容是不会改变的

调用x2时,传递过去的是ab的内存地址,并且在子函数中,交换了ab内存地址中的内容,那么ab就交换了
这个主意两点
1,交换了ab内存地址(也就是指针)中的内容,但是你看在子函数中,指针是没有交换的,所以说传递过去的参数是没有改变,只是改变了指向的地址中的内容
2,要是在子函数中声明的c是指针,如果用c=i;i=j;j=c,那么只是交换了指针,而指针指向的内容还是没有改变,并且在主函数中,这两个参数指针还是没有改变。道理同第一个,因为实参和形参是占不同的内存地址,

热心网友 时间:6小时前

调用第一个函数的过程为 值传递

热心网友 时间:6小时前

那个,这是常识吧。几乎所有的C语言书籍都会把这个做为标准案例来演示
第一个仅传递副本,就是传值
第二个是传递地址。

热心网友 时间:6小时前

代入变量和值的作用域不一样,也就是,如果通过变量代入,此时不会改变变量的值。如果通过指针(参数)的形式代入,则会可以改变指针指向的变量的值,但是地址不可以改变。如果想改变地址呢,就得用双指针,或者说第二层地址代入。

热心网友 时间:6小时前

X1是实参的值赋值给形参,实参值并没有改变。
X2定义的指针,为了处理大量数据,指针是直接操作实参本身(注意:不是赋值实参的值)。

参考:C.Primer.Plus(第五版)中文版.pdf 函数体
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
平安e家保是什么险 2023年高级会计师报名时间和条件 2022高级会计师报考条件要求是什么? 问几个英文语法问题,希望能正确回答~ 女生锁骨下长痣,左右都有 不是很对称 寓意什么呐? 抖音上传照片音乐短怎么办 断夜奶好方法 婴儿断夜奶最佳方法 建设银行,你打算坑害多少优质客户? 【PS教程】如何做出凹陷字体效果的氛围海报 电焊打眼睛怎么用土豆 英语时间短语 电焊打眼了电焊打眼了怎么办? Shall we do something to pass the time more quickly?是什么意思? 电焊伤眼怎么解决 情侣间有共同的爱好和话题重要吗 郑州哪里有无患子树 美云智数M.APS系统有什么实际应用案例可以参考? ...与排产APS智慧供应链中有没有企业实验成功的案例? 人民法院支持的民间借贷利率是多少 滚筒洗衣机排水泵 十二生肖投机取巧是什么生肖 溶剂分别指什么? 商晓娜我们班的博客 潘多拉的骑士们之希望女神编辑推荐 潘多拉的骑士们之火焰少女图书信息 潘多拉的骑士们之火焰少女目录 潘多拉的骑士们之命运女巫图书目录 牯牛降这个名字的读音是什么? 电脑图片是什么格式的电脑图像文件名有几种格式 眼睛被电焊灼伤如何处理 欧洲宫廷建筑风格有哪些 10kv和35kv的绝缘手套的耐压标准是多少 配电室绝缘棒标准 本人男 15岁 身高 1.62 这个算正常么? 我15岁 身高1.62算黄金比例 我现在15岁了``但是身高才1米62```初3``有没有什么办法可以长高啊... 大家看看,我是15岁男孩,身高1.58米,重39kg,算正常吗? 我儿子今年十三周半身高是1.62米是否身高不够 男孩15岁身高1.50cm正常吗? 投篮被犯规算不算出手不中啊? NBA投篮被犯规没投进算投篮一次吗 NBA被犯规的球会不会计算进命中率? 定性研究和定量研究到底是什么,举个化学上的例子解释下 求下图动漫叫什么名字 如何更换钉钉绑定的手机号 解绑钉钉绑定的手机号 如果换手机了钉钉怎么办 钉钉app修改手机号 ╭(╯ε╰)╮*^_^*~\(≧▽≦)/~这些代表什么意思 近视多少度高考体检不合格