作业帮 > 综合 > 作业

C++中while内的逗号什么意思?

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/06/03 02:48:07
C++中while内的逗号什么意思?
比如这句while(ch=getchar(),ch!='9');
最好能举例说明一下谢谢.
逗号表达式的结果就是最后一个表达式的结果.
例如:
表达式1,表达式2,表达式3,.表达式n
结果 等于 表达式n 的结果
此处先输入字符给ch,然后用于判断的表达式才是ch!='9
再问: 那么我这么做:
while(ch!='9') ch=getchar();是不是和它等价的?
再答: 你之前要ch=getchar();给ch赋值啊,再while(ch!='9')进入循环,循环内的最后再ch=getchar();再输入ch继续判断,这样就等价了。
但是你要注意,用getchar()输入值,会把'\n'也输入进去,所以你要再循环内再加一个getchar(),清楚输入流中的'\n'比如下面两个代码就是等价的:#include<stdio.h>
int main(void)
{
    char ch;
    while(ch=getchar(),ch!='9')
    {
        getchar();
        printf("y");
    }
    printf("n");
    return 0;
}二:#include<stdio.h>
int main(void)
{
    char ch;
    ch=getchar();
    while(ch!='9')
    {
        getchar();
        printf("y");
        ch=getchar();
    }
    printf("n");
    return 0;
}