C 错误:赋值的左操作数需要左值
我试图用C语言做一些计算程序,我得到的错误是什么C 错误:赋值的左操作数需要左值,c,C,我试图用C语言做一些计算程序,我得到的错误是什么 错误:赋值的左操作数需要左值 这个错误是因为在标题上定义了一个值,然后我在主体中使用=赋值 如果我将该值放在标题中,而不是将它们放在int或double中,那么就可以了,但我不希望它们在那里 如果需要更多关于我想说什么的信息,请告诉我 谢谢 下面是我在define#define price 50 在我得到错误的主体中,price=price*2+total您不能分配给定义!预处理器完成后,对于编译器来说,代码如下所示: 50 = 50 * 2
错误:赋值的左操作数需要左值
这个错误是因为在标题上定义了一个值,然后我在主体中使用=
赋值
如果我将该值放在标题中,而不是将它们放在int
或double
中,那么就可以了,但我不希望它们在那里
如果需要更多关于我想说什么的信息,请告诉我
谢谢
下面是我在define
#define price 50
在我得到错误的主体中,
price=price*2+total
您不能分配给定义!预处理器完成后,对于编译器来说,代码如下所示:
50 = 50 * 2 + total;
问题是价格被文本50所取代。你不可能
50 = ...
在C中。不能这样做。请发布代码的相关部分。@Mat我不知道这是否足够,是的,足够了:)是的,我知道行将等于
price=50*2+300[假设总数=300]
但是我不知道为什么我的教授让我用#define
而不是int
或double
是的,但是当我从int
中删除值并在define
中使用它们时,我得到了这个错误,我的教授似乎没有从我的实验中给我任何信息了解我在哪里做的研究,也从这里得到了同样的结果,不能这样做。@Ali也许你应该把值存储在不同的变量中?类似于final_price=price*2+总计代码>?谢谢你给了我一个想法,我会尝试一下。现在唯一的问题是,如果我使用像这样的final\u price=price/total
输出总是0,所以我尝试使用`printf(“%d”,price)来显示price
本身的输出;并且它正确地显示了值。我不知道到底出了什么问题