C语言中传值和传地址有什么差别,怎么用的

发布网友 发布时间:2022-03-25 19:38

我来回答

2个回答

热心网友 时间:2022-03-25 21:08

传值的意思就是告诉你某些参数当前取值是多少,请处理
传地址的意思就是告诉你需要将处理过的数据可以存放到这些地址存储的变量中,以便调用者使用。
传值的举例:y=sin(30/180*PI); 这里就是要求sin函数计算30度的正弦值,返回值就是结果,参数用一下就可以了,也可以:x=30; x/=180; x*=PI; y=sin(x);
传指针的举例:int a[10],i; input(a,10); sort(a,10);在input函数中进行键盘输入,输入的值放到数组a中,这样就需要传送数组a的首地址,而第2个参数通知input该数组有10个元素需要输入,这个10就是前面的传值的用法;同理排序程序需要改变a数组中各数据的位置,也就是要sort函数帮助修改a数组的内容,所以也需要传指针。传指针的办法一般是在函数要返回的数据并非简单变量类型时使用,比如数组、结构、混合数据等。追问抱歉我还没学到指针。请问findmax(nums,value);在调用函数之前没有value,是怎么回事?

追答你的问题不清晰,是value没有被赋过值的意思吗?这需要看多一些的程序才能分析

热心网友 时间:2022-03-25 22:26

传值,你可以拿这个值来做运算,但是原来的还在,传地址,可以把运算后的结果直接存入,原来的就改变了追问findmax(nums,value);是如何调用函数的?又是怎么传递数组参数的?

追答这个是把nums跟value传给findmax里面去做处理,数组参数可以传递名称的首地址,之后就可以直接取出数组里的成员来做运算了

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com