導航:首頁 > 源碼編譯 > 程序編譯成功但運行不了

程序編譯成功但運行不了

發布時間:2025-01-08 22:37:52

㈠ C語言里程序編譯無誤但運行會彈出程序已停止運行是為什麼

造成程序停止運行彈框出錯的可能原因如下:

  1. 內存溢出

    內存溢出(out of memory)通俗理解就是內存不夠,程序所需要的內存遠遠超出了主機內安裝的內存所承受大小,就叫內存溢出。系統會提示內存溢出,有時候會自動關閉軟體,重啟電腦或者軟體後釋放掉一部分內存又可以正常運行該軟體

    造成內存溢出的原因可能有:

    1>棧區溢出,例如在main函數內開辟的數組空間過大,一般機器的棧區限制在8MB左右,如果開辟的數組大小超過限制,程序就會崩潰。通常的解決方法是申請堆內存,即將較大的數組作為全局變數開在main函數之外。

    2>錯誤地址訪問,常見的非法訪問包括指針漂移,數組越界等,初學者也經常出現類似scanf函數沒加區地址符號&的情況導致在讀取變數的時候因非法訪問造成的溢出。

    3>數據類型不符,問題和第二個類似,例如在聲明變數時聲明為int在輸出變數時卻用了%lld,就會造成因數據類型不符而導致的溢出。

  2. 編譯器錯誤

    部分編譯器由於所使用的標准不同(例如在一台機器上使用的可能是C99標准,而另一台機器上使用的是C11標准),或是因為編譯器鏈接庫的損壞,在少數情況下也可能導致程序出現不限於崩潰退出的異常錯誤,通常解決方法是到編譯器官方網站下載最新版的IDE安裝。


㈡ 為什麼C語言程序編譯正確但不能執行

這當然原因非常多,比如:編譯器編譯不夠嚴格、程序有很大的風險等等,最簡單的一個例子如下:

inta;
scanf("%d",a);

可以確定的一點是:一旦在運行中出現錯誤,大多是較為嚴重的錯誤,須引起重視,否則,一旦錯誤非常嚴重,必會導致許多嚴重的後果,如死機、卡屏甚至直接導致藍屏。

㈢ 程序編譯成功但不能運行是什麼原因

需要看一下警告信息。
在代碼中加一些輸出語句或者進行調試,如果還無法修改,再來提問。

㈣ C語言程序編譯後正確,但是運行時總有一個 錯誤是怎麼回事啊,,很急啊,,各位幫幫忙

LINK : fatal error LNK1104: cannot open file "kernel32.lib"

沒有指定lib路徑!

就是說你的程序 引用到kernel32.lib 庫了;然而你 又沒有給他指定正確的路徑;編譯時,編譯器找不到kernel32.lib

㈤ 我寫的一個程序編譯通過,但運行是報錯。 這是出了什麼問題

這是邏輯錯誤,就是說代碼在語法上沒有錯誤,但是在邏輯上有問題,因此沒辦法執行。
處理這種問題,可以通過調試,來看看哪一塊代碼邏輯上有問題(就是說沒有達到預期的效果)。

閱讀全文

與程序編譯成功但運行不了相關的資料

熱點內容
瑞納壓縮機多少錢 瀏覽:495
javautf8bom 瀏覽:85
勇猛之路為什麼無法與伺服器連線 瀏覽:420
androidlinux命令行編譯 瀏覽:694
lsplc編程電纜 瀏覽:718
圍棋網站源碼 瀏覽:957
etoys編程 瀏覽:440
中興伺服器管理網口什麼名稱 瀏覽:650
天龍八部下載出現壓縮卷怎麼回事 瀏覽:925
速賣通php 瀏覽:941
播放安卓是什麼詩 瀏覽:785
jsp中編譯中文 瀏覽:238
手機桌面文件夾變小了怎麼辦 瀏覽:573
日程管理app哪個好 瀏覽:702
黑馬程序員雲開發實戰 瀏覽:597
加密空間上傳作品 瀏覽:398
備忘錄清空的如何恢復安卓 瀏覽:170
劍三霸刀宏命令 瀏覽:36
手機zip文件的解壓方式 瀏覽:189
順豐金融app在哪裡可以下載 瀏覽:930