如何测试标识符是否为字符?我正在尝试测试以查看名为code == I
,或code == D
,或code == C
的标识符。
这是我到目前为止所做的。
char code;
double amount, service, balance;
double amtCheck, amtDeposit, openBalance, closeBalance;
int numCheck, numDeposit;
inp = fopen("account.txt", "r");
printf("Transaction\tDeposit\tCheck\tBalance");
printf("-----------\t-------\t-----\t-------");
while ((fscanf(inp, "%c %f", &code, &amount)) != EOF){
if (code == I){
openBalance = amount;
}
else if (code == D){
numDeposit++;
}
else if (code == C){
numCheck++;
}
答案 0 :(得分:3)
在字符文字I, D
和C
周围放置一个引号。
if (code == 'I'){ }
答案 1 :(得分:3)
使用单引号'C'
表示字符文字。
答案 2 :(得分:2)
将code
与'I'
,'D'
和'C'
进行比较。
while ((fscanf(inp, "%c %f", &code, &amount)) != EOF){
if (code == 'I'){
openBalance = amount;
}
else if (code == 'D'){
numDeposit++;
}
else if (code == 'C'){
numCheck++;
}
答案 3 :(得分:2)
注意在C中,char必须用''包围,字符串或char数组必须用“”包围。 没有'',C,D和I将被视为变量。
答案 4 :(得分:1)
我更喜欢这种事情的switch语句。当然还需要单引号。