使用C编译程序时,出现错误:
error: suggest parentheses around comparison in operand of '!=' [-Werror=parentheses]
产生此错误的行是这段代码中的while行:
void addProductToStock(tStock *stock, tProduct product) {
int i;
bool found;
i = 1;
found = false;
while (i <= (*stock).numProd != found) {
if ((*stock).products[i].productCode != product.productCode) {
i++;
}
else {
found = true;
}
}
(*stock).products[i].availableUnits = (*stock).products[i].availableUnits - product.unitsRequested;
(*stock).products[i].unitsRequested = (*stock).products[i].unitsRequested + product.unitsRequested;
}
我该如何解决错误?感谢帮助并提供解释。
最佳答案
乍一看,您可能想要更改
while (i <= (*stock).numProd != found)
至
while (i <= (*stock).numProd && !found)
您正在检查没有超出数组范围,并且尚未找到乘积。
关于c - C括在操作数中的括号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27388505/