以下是引用不玩虚的在2013-1-1 19:45:44的发言:
版主的说的正确。楼主的主函数main()的类型是int,函数体末尾少了个return 0;,不想要也行把int main()的int 改成void。初学c++时要养成好习惯。楼主用的什么教材,system("pause");调用系统函数,我写c++表示从来没有用过。我的不写也行。结果是Press any key to continue,多system("pause");这句就一个中英文之分。
1。对于main函数,对于每个退出分支,若无return,则编译器自动加上return 0,这是标准规定的。
2。main的返回类型必须是int,无论对于C,还是C++都是这么规定的。你的编译器有可能对于void main不报错,但你要知道这是非标准的。
3。加system("pause"),或类似的烂玩意儿,只说明对控制台程序(命令行程序)的行为模式理解有误。控制台程序结束后就应该退出,而控制台本身是否退出不应该由程序越俎代庖去控制。
4。你的“Press any key to continue”不是程序本身的,而是IDE好意加上去的。同样,也不是加在程序本体中(否则就犯了第3条描述的错误),而是你通过IDE调用控制台程序时,IDE加了Shell