【发布时间】:2016-11-21 07:20:56
【问题描述】:
我正在检查一个学生的作业。 任务是将英文字母的数量打印到控制台。 出于某种原因,他所做的工作(第 7 行):
int main(void)
{
char first = 'A';
char last = 'Z';
int amount = 0;
amount = ("%d - %d", last - first + 1);
printf("The amount of letters in the English alphabet is %d\n", amount);
return(0);
}
看到之后,我试着把其他的东西放在括号里,而不是“%d - %d”。不管我放了什么,有多少个逗号,它只会取最后一个逗号之后的内容(这是正确的句子)。
那里实际发生了什么?
【问题讨论】:
-
呃,你是老师吗……你需要的是逗号操作符。
-
给那个学生 A+。他教你“逗号运算符”。
-
我很想知道为什么学生写了
("%d - %d", last - first + 1);。 -
嗯,我问过许多更有经验的程序员同样的问题,但没有人知道答案。为什么这个逗号运算符甚至存在?太没用了……(-_-')
标签: c comma-operator