gpt4 book ai didi

c++ - 将 C++ char 结构与 ASCII 值进行比较会产生错误

转载 作者:行者123 更新时间:2023-11-27 23:19:20 26 4
gpt4 key购买 nike

if (sale->taxStatus[i] = "y")  // line 44

产生错误:

y.cpp:44:12: error: 请求成员(member)taxStatus in sale,非类类型Sale*

我的结构:

struct Sale {
int quantity[MAX_SALES];
float unitPrice[MAX_SALES];
char taxStatus[MAX_SALES]; // MAX_SALES = 10
};

完整功能:

void total(struct Sale sale[], int sales) {

int i = 0;
float subTotal, hst, total = 0;

for (i = 0; i < sales; i++) {
subTotal = subTotal + (sale->quantity[i] * sale->unitPrice[i]);
if (sale->taxStatus[i] = "y")
{
hst = hst + ((sale->quantity[i] * sale->unitPrice[i]) * 0.13);
}
}

cout << "\n" << "Subtotal : " << subTotal << endl;
cout << "HST (13%) : " << hst;
}

最佳答案

if (sale->taxStatus[i] == 'y')

正如@jweyrich 和@AustinPhillips 还指出的那样,您需要双等号 (==) 并且字符在单引号中进行比较。

单个等号 (=) 用于赋值。

例如s = 5;

双等号 (==) 用于检查两个或两个以上的值是否相等。

例如if( s == d && d== e && e == f && f == b ) { };

带感叹号 (!=) 的等号用于检查两个或两个以上值的不等式。

例如if( s != d && d != e && e != f && f != b ) { };

关于c++ - 将 C++ char 结构与 ASCII 值进行比较会产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14431871/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com