vs編譯閃退
Ⅰ c語言,為什麼用vs.vc編譯的控制台應用程序如果不加system(pause)會閃退,原因是什麼
閃一下就消失是正常的。
因為程序語句一句句地執行,沒有什麼讓它暫停下來,以計算機執行速度之快,當然一閃而過。
至於為什麼有的要加暫停有的不用加暫停也行,
那是因為有的是調試運行,有的是運行
按ctrl+F5運行就不會一閃就消失了,這樣就不用加system("pause");
有的編譯器(例如Dev-C++)會在代碼最後自動加上system("pause");以防止新手看不到輸出結果。不過我還是習慣用cin.get();。
Ⅱ VS程序運行結果框閃退的幾種解決方案:
方法一:
在return語句前面加上一個getchar();語句,此時getchar會一直等待輸入,程序運行結果框就可以正常顯示運行結果啦!
方法二:
在程序末尾加上:system("pause"),再加上頭文件#include<stdlib.h>,運行後就會顯示結果並提示按任意鍵繼續。
方法三:
修改項目配置,右鍵點擊項目,選擇屬性,然後在對話框中選擇「配置屬性——》鏈接器——》系統」,在子系統中選擇「控制台」。
方法四:
如果是編譯器的原因:
1: 添加:
#include <iostream>
#include <limits>
( 如果有#include 「pch.h」
或者 #include 「stdafx.h」 的話,要確保這兩行在他們之後出現)
2:在主函數之後,return語句之前加上:std::cin.clear();
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
std::cin.get();
提示:system("pause")只能在特定操作系統中使用(不推薦)。
最後成功!
Ⅲ vs2010 編譯閃退
是vs閃退還是你的程序閃退。
如果是你程序閃退是很正常的,因為你的main函數沒有任何方法阻塞,所以執行玩cout之後就返回了,主函數返回,程序就結束了。
Ⅳ 為什麼VS2015運行一個Hello World的C語言程序會閃一下跳出來
一閃而過是程序自動結束,同時編譯器沒有提供結果駐留功能。對於此種情況,可以手動在代碼結尾增加駐留功能的函數。常用的有如下兩種:
1 通過getch函數駐留。
getch會等待從屏幕的輸入,在main函數退出前,增加
getch();
調用,系統會等待輸入,直到有新的輸入,才會退出界面。
2 通過system("pause");來實現駐留。
在main退出前調用
system("pause");
會調用系統的pause函數,提示並實現按任意鍵退出程序效果。
如果是已經編譯好的C語言程序,可以通過開始->運行,鍵入cmd後回車。
在打開的命令行窗口,將可執行文件拖動到窗口上,再回車即可運行該程序,在此窗口不會出現閃退,從而觀察運行結果。
由於該問題僅在windows平台出現,所以以上介紹均針對windows平台。