編譯時提示應用程序無法正常運行
造成程序停止運行彈框出錯的可能原因如下:
內存溢出
內存溢出(out of memory)通俗理解就是內存不夠,程序所需要的內存遠遠超出了主機內安裝的內存所承受大小,就叫內存溢出。系統會提示內存溢出,有時候會自動關閉軟體,重啟電腦或者軟體後釋放掉一部分內存又可以正常運行該軟體
造成內存溢出的原因可能有:
1>棧區溢出,例如在main函數內開辟的數組空間過大,一般機器的棧區限制在8MB左右,如果開辟的數組大小超過限制,程序就會崩潰。通常的解決方法是申請堆內存,即將較大的數組作為全局變數開在main函數之外。
2>錯誤地址訪問,常見的非法訪問包括指針漂移,數組越界等,初學者也經常出現類似scanf函數沒加區地址符號&的情況導致在讀取變數的時候因非法訪問造成的溢出。
3>數據類型不符,問題和第二個類似,例如在聲明變數時聲明為int在輸出變數時卻用了%lld,就會造成因數據類型不符而導致的溢出。
編譯器錯誤
部分編譯器由於所使用的標准不同(例如在一台機器上使用的可能是C99標准,而另一台機器上使用的是C11標准),或是因為編譯器鏈接庫的損壞,在少數情況下也可能導致程序出現不限於崩潰退出的異常錯誤,通常解決方法是到編譯器官方網站下載最新版的IDE安裝。
㈡ c語言編程的程序為什麼無法運行,一直提示源文件未編譯
你是不是粘貼了網頁上的代碼,那個可能有很多符號的。還有保證在英文狀態下輸入啊。未編譯是肯定的啊,你都有語法錯誤啊。
㈢ 為什麼C語言程序編譯正確但不能執行
這當然原因非常多,比如:編譯器編譯不夠嚴格、程序有很大的風險等等,最簡單的一個例子如下:
inta;
scanf("%d",a);
可以確定的一點是:一旦在運行中出現錯誤,大多是較為嚴重的錯誤,須引起重視,否則,一旦錯誤非常嚴重,必會導致許多嚴重的後果,如死機、卡屏甚至直接導致藍屏。
㈣ 運行vs2013編譯的工程, 應用程序無法正常啟動(ox000007b),
你好!在這個軟體的【桌面快捷方式】上,點右鍵,屬性,【兼容性】,【用兼容性運行這個程序】,【勾好】,應用,確定!或者點:【用管理員身份運行這個程序】,應用,確定!再不行,卸載重裝該軟體!——力王歷史!
㈤ devC++編譯通過後,程序無法正常啟動是什麼原因
同學,你一個project里放了兩個main函數當然得報錯……「exam2.obj : error LNK2005: _main 已經在 exam1.obj 中定義。」 解決方法:要麼再建個項目把單獨2放進去跑,要麼把1的main函數注釋掉,或者把1暫時排除出項目(代碼旁邊的解決舉喚模方案資源管鏈雹理器視圖上找到exam1.c,右鍵之,有一個「從該項目中排除」,再想包含時找最上面的菜單欄,「項目->顯示所有項目」,再去解決方案資源管理正緩器上找到它,右鍵「包含在項目中」。)
㈥ 用vs編譯C++文件時無法啟動程序,並且找不到指定文件怎麼辦
1、用 VS 打開工程,點擊菜單 項目 - 屬性。