最近在学C语言,也就是粗略学一下,培养一下自己的逻辑思维,毕竟C语言是所有语言基础嘛,用的是vs2017,想提前熟练这个程序员最常用的编译器
有时候也会遇上兼容性问题,但一般csdn上一搜就能解决问题
但是在学到函数参数的时候,问题出现了,在实现函数参数传址的时候,发现实参的址并不能传给实参,请大佬们看一下是编译器问题还是我编写问题,有没有解决方案
举个简单的例子
#include<stdio.h>
float average(int b[10]);
void main()
{
float q;
int a[10],p;
for (p = 0; p <= 9; p++)
{
scanf_s("%d", &a[p]);
}
q=average(a[10]);
printf("%f", q);
system("pause");
}
float average(int b[10])
{
float ave;
int i,sum;
for (i = 0,sum=0; i <= 9; i++)
{
sum += b[i];
}
ave = sum / 10.0;
return ave;
}
在运行这个程序的时候
a的地址是0x0053fd68
继续运行
b还是未赋址状态
另外
显示读取访问权限冲突
萌新求解!!!!!