我目前正在开发一个程序,该程序将您的姓名、地址、学校成绩等作为输入,并计算 f.e. 的平均分。主题 APHM。
任何人都可以解释为什么使用指针将值添加到变量中不起作用吗?
提前致谢!
double avgINF=0, avgAPHM=0, ...;
struct adresse{
char vorname[50];
char nachname[50];
char strasse[50];
char hausnr[50];
char tuer[10];
char ort[50];
char plz[10];
double noteAPHM[1];
double noteINF[1];
} adressen[41];
avgINF += adressen[i-1].noteINF;
错误:二进制表达式的操作数无效 (double*)
最佳答案
欢迎来到该网站!如果 noteINF
应该只保存一个值,则应该是 double noteINF;
而不是 double noteINF[1];
。对于单个值,您不需要数组([1]
后缀)。
至于您的错误消息,noteINF[1]
是一个数组。在上面的代码上下文中,数组的名称充当指向数组第一个元素的指针。因此,noteINF
的行为类似于 double *
(指向 double 的指针),而 noteINF[0]
是一个 double
(数组的第一个元素)。网上有很多关于 C 数组和指针的教程,因为几乎每个人都会在某些时候遇到它们。祝你好运!
关于c - 将 double* 添加到 double 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37860568/