用vs2012编写c语言的时候,运行时总有闪退的问题。。。但是我看过网上的一些解决方法,却好像没有什么用!求大神帮忙一下!!!
在程序的最后或return 的上面,加上:
system (" pause ");这样程序就暂停了,等你按键后继续
追问没有用。。。老是说我 的system是不存在此意义的词
追答加上头文件:
加了。。这个肯定加了!!
追答那你把代码复制出来,把界面截图发上来
追问等等。。。我回去试试。。。现在在上课
追答好的,有问题再解决吧
追问的确不行阿
追答在 return 0; 的上面加一句,变成下面这样:
getchar();还是闪退!
追答那你编译运行后,让你输入 a和b 的数值了吗
追问我输入了
但是在我刚刚看到结果的时候就自动关闭那个运行框了
追答你把程序复制,然后编译运行
可以啦~
太感谢了!!!
是getchar吗?我输入木有用!
追答那就可能是代码有问题运行中出现异常退出了。代码不长的帖来看看?或者你单步运行看看跑到哪出退出的。
追问。。。我所有写的都会出现闪退!甚至我只是抄写书上的程序也会闪退!
追答单步运行来看看吧。这样能确保你跑的代码是你写的,并且验证你的代码正确无误,确实跑到了main最后一句退出。vs2012 控制台程序里,getchar 之类的暂停不可能没有用的。你也可以试试,把getchar放入口第一句,如果这样都不停下来等待输入,那你的工程肯定有问题。
追问这样不行吗?我从来都这样做,极少用 system("pause");
看你上面能用 getchar 输入 a, b 那也表示getchar有效啊。
。。。我已经解决了。。。不能只加一句
追答如果按你上面这个代码,那当然不能只加一句。因为你要输出显示a,b,需要有a,b获取值的语句。但不代表任何时候都要多句。你可以试下下面的代码行不行。
#include <stdio.h>如果没有别的问题,这样是可以在显示Hello world!之后暂停让你看到结果,在你输入回车后消失终端窗口。如果这样不能显示,肯定是存在一些未知问题。
肿么弄。。。
追答可以试试,不过定义要放在前面,不然有可能会出错
int x;
cin>>x;
怎么输入。。你把整句写一下
追答int x;
scanf("d%",x);
那个x随便打?我是初学者不大知道。。。
追答x 当然是整数
没用。。。
追答不可能没用的,,我的VS2010都可以用。。。。是你不知道创建工程,,然后你改的代码,,和你编译的不是同一个代码,,,,就会出现你那种情况,,,你重新看看是不是你保存的代码,,和你编译的不是同一个,,以前我出现过类似的问题,,,
追问阿?我的步骤都是根据百度经验的教程进行的!照理说不会错!
追答你改的代码,,和你编译的不是同一个代码!!!!!!!!!!!!!!!这句话就是重点,,不信你重新写过代码,,,,把原来的关闭 重新打开。。。重新粘贴到源文件去。。。