c语言中aver是什么意思_C语言的指针问题。*(p+i)是代表取值呢还是取地址?,C语言中,指针*p[i]与p[i]有什么却别?分别代表什么意...

针对第一个问题:&是取地址符号,数据在计算机中存储,有相应的地址能够找到.数组头部就相当于一个指针,如果float xn,那么x代表着数组中的首地址,由于数组在内存占用的是连续存储空间.因此也可以用指针去得到它的数据.你调用数组的时候,其实也就是传递数组的首地址给函数,那么就不需要&符号了.然而你想传递thetaf,这个thetaf只是个数据,想在函数中改变它的值,那么可以通过得到数据的地址,在地址中改变数据.第二个问题同上面回答,可以采用一个全局变量,也就是定义在函数外面的变量,最好在.C文件开始的地方.第三个问题:返回一个数组即返回它的首地址就可以了,如果你能够了解到计算机数据在内存中的排列,那么这个概念就非常容易理解.浮点数和整数一样,在内存中占用4个字节,#include float * SumArray(float *x, float *y,int len) {float *sum;int i = 0;for(i=0;isumi = xi + yi; //*(sum+i) = *(x+i) + *(y+i);}return sum;//这里返回的是sum数组的首地址,你可以把sum理解为一个指针的地址,也可以理解为一个数组的首地址.请注意*sum和sum0的地址是一样的,sum是sumn的首地址,如果你能区分出这个概念,指针也是小case了.}int main() {float x10,y10;float *sum;//float sum10;int i = 0;for(i=0;ixi = i;yi = i*10;printf("%f\t%f\n",xi,yi);}sum = SumArray(x,y,10);//将返回的传递给sum指针,或者所让sum指向数组返回的地址for(i=0;iprintf("%f\n",sumi);}printf("%d",sizeof(float);//查看浮点数在电脑中占用的字节return 0;}通过函数,可以返回一个数组,我已经调试通过.你也可以在你的电脑上调试这段程序,加深理解,PS:如果觉得我的答案能回答你的问题,,谢谢~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值