为啥?编译器认识END并不代表cin也能认识。

解决方案 »

  1.   

    输入END还是if(a==-1改成END) break死循环?
      

  2.   

    你输入的END是字符串或ASCII代码,看你的a定义
    如:define END 0x41
    int a;
    则输入"A",就行了!
      

  3.   

    “END”只是一个编译时期定义的符号,供编译器使用,运行时就没有意义了。运行时你要是还写END的话,程序只会将它当作一个字符串,你必须在程序中按字符串的形式将其读入,再做处理——字符串与编译器用的符号是两码事。
      

  4.   

    预编译后END已经改成-1了,输入END当然没用了。