哈哈哈的 发表于 2018-7-30 20:25:40

一个关于Break使用的问题

#include<stdio.h>
#include<conio.h>
void main()
{
        int i=0;
        char c;
        while(1)//无限循环
        {
                c='\0';
                while (c!=13&&c!=27)// 这一行啥意思???
                {
                        c=getch();
                        printf("%c\n",c);
                }
                if(c==27)
                        break;
                i++;
                printf("the number is %d\n",i);
    }
printf("the end");
}


为什么开头要设置一个无限循环呢?? 后面一个break跳出的是if循环对吗?? 这个程序就是让我输入一个字符,然后按回车键得到一个 the number is 1. 对吗???{:5_94:}


无符号整形 发表于 2018-7-30 20:29:06

本帖最后由 无符号整形 于 2018-7-30 20:42 编辑

额,if不是循环,break的作用是跳出最近的for/do..while/while循环。
这个程序确实是不断地这样直到发现用户按下esc之后退出,按下归位键(这个我也不知道是啥,意图不明)忽略。
那行代码就是判断用户是否按下按下归位键或者esc键。

哈哈哈的 发表于 2018-7-30 20:38:28

无符号整形 发表于 2018-7-30 20:29
额,if不是循环,break的作用是跳出最近的for/do..while/while循环。
这个程序确实是不断地这样直到发现用 ...

归为键就是回车键吗

无符号整形 发表于 2018-7-30 20:42:08

哈哈哈的 发表于 2018-7-30 20:38
归为键就是回车键吗

不是,'\n'是回车,归位是'\r'。

ba21 发表于 2018-7-31 10:06:51

程序员#? 发表于 2018-8-3 14:53:30

你加了注释的那一行是问i等不等于13或28。
页: [1]
查看完整版本: 一个关于Break使用的问题