首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

break语句!请

2012-09-02 
break语句求助!请高手指点啊书上看到个程序,#include stdio.hvoid main(){int i0char cwhile(1)/*设

break语句求助!请高手指点啊
书上看到个程序,
#include "stdio.h"
void main()  
{  
  int i=0;  
  char c;  
  while(1) /*设置循环*/  
  {  
  c='\0'; /*变量赋初值*/  
  while(c!=13&&c!=27) /*键盘接收字符直到按回车或 Esc 键*/  
  {  
  c=getch();  
  printf("%c\n", c);  
  }  
  if(c==27)  
  break; /*判断若按 Esc 键则退出循环*/  
  i++;  
  printf ("The No. is %d\n", i) ;  
  }  
  printf("The End");  
 }  
刚开始学break语句,书上有这个例子,看了半天没看懂。有以下2个问题:
1.c='\0'这是循环变量赋初值,那么为什么要赋个\0?我查了下\0对应的ASCⅡ码是NUL,请问这有什么具体的含义?
2.while后面的(c!=13&&c!=27)!=27可以看懂所对应的ASCⅡ码是ESC,但是!=13所对应的ASCⅡ码CR是什么意思?是回车的意思?CR是回车吗~?
结合我在编译器上对程序的运行,执行下来是每按一个键,然后立马输出并换行,直到我按下回车键或者ESC,若输入回车键,则执行i++,The No. is X,如果按ESC则停止。

[解决办法]
1.重新初始化 不让上一次的值干扰当前 没什么特别意义 
2.就是回车

你可以试着F10单步调试几遍 就明白了

热点排行