c程序可以運行不能編譯
可能很多人在安裝VC 6.0後有過點擊「Compile」或者「Build」後被出現的
「Compiling... ,Error spawning cl.exe」錯誤提示給郁悶過。很多人的
選擇是重裝,實際上這個問題很多情況下是由於路徑設置的問題引起的,
「CL.exe」是VC使用真正的編譯器(編譯程序),其路徑在「VC根目錄\VC98\Bin」下面,
你可以到相應的路徑下找到這個應用程序。
因此問題可以按照以下方法解決:打開vc界面 點擊VC「TOOLS(工具)」—>「Option(選擇)」
—>「Directories(目錄)」重新設置「Excutable Fils、Include Files、
Library Files、Source Files」的路徑。很多情況可能就一個盤符的不同
(例如你的VC裝在C,但是這些路徑全部在D),改過來就OK了。
如果你是按照初始路徑安裝vc6.0的,路徑應為:
executatble files:
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin
C:\Program Files\Microsoft Visual Studio\VC98\BIN
C:\Program Files\Microsoft Visual Studio\Common\TOOLS
C:\Program Files\Microsoft Visual Studio\Common\TOOLS\WINNT
include files:
C:\Program Files\Microsoft Visual Studio\VC98\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
library files:
C:\Program Files\Microsoft Visual Studio\VC98\LIB
C:\Program Files\Microsoft Visual Studio\VC98\MFC\LIB
source files:
C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC
C:\Program Files\Microsoft Visual Studio\VC98\MFC\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\ATL\INCLUDE
C:\Program Files\Microsoft Visual Studio\VC98\CRT\SRC
如果你裝在其他盤里,則仿照其路徑變通就行(我就是裝在D盤)。
關鍵是microsoft visual studio\ 後面的東西要相同。
本人深受其害,重裝多次不管用,上面中文部分為高手借鑒,
參考:http://..com/link?url=Nc_6_-HpnNXII-iOVHEE_SURDrsp8pQgsuj_rwcO0zq
B. c語言無法編譯是什麼情況
編譯出來只說明程序沒有語法錯誤,不說明沒有邏輯錯誤,有錯誤一般會有屏幕輸出,此其一。第二,可以在程序中設定一些輸出語句或斷點觀察。第三如果程序不輸入、輸出內容,程序執行是當然看不見東西(不直觀)。第三如果程序一值運行無法退出,說明存在「死循環」。
C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。
C. 我這個C語言程序為什麼不能編譯
說實話我沒弄明白你這個程序想干什麼,定義了一個沒有跳出的遞歸調用order,其結果是一直調用自身,不過此程序中它不會被運行到,因為最初沒有函數會去調用它,這里應該是一個警告吧。
至於無法編譯應該是因為main函數中x,y沒被定義,在order中形參的定義對於main中的變數是無效的。
D. dev-c++只能運行無法編譯怎麼辦
執行編譯的前提是已經保存了這個文件,但是沒有保存是無法編譯的。
E. c語言問題 運行可以 編譯通不過,求解啊
Stackinit函數中
Stack S=malloc(sizeof*S);//改為Stack S=(Stack)(malloc(sizeof(astack)));
S->data=malloc(size*sizeof(char)); //改為 S->data=(char*)(malloc(size*sizeof(char)));
malloc函數返回的指針為void*,應該進行強制類型轉換吧
F. C語言代碼無法編譯
你看看後台,是不是還有之前調試運行的窗口沒關。再檢查一下代碼,看看有沒有代碼錯誤,你圖片上看到的代碼,只有一堆printf語句。再不行,就換個IDE把代碼貼過去編譯。
G. 程序無法編譯通過問題,怎麼解決
關於程序無法通過編譯的問題,其錯誤類型肯定是有很多種的。根據我多年的編程調試經驗,可以給你提供以下幾種類型的錯誤,供你參考(以下以 C 語言編程經驗為例,其他編程語言的調試思路也是同理的)。
其中最容易調試的程序錯誤類型就是:
(1)、在編寫源程序過程中出現的各種語法錯誤。這種錯誤主要是由於剛剛開始學習編程,對編程語言的語句、以及語法結構還不是很清晰造成的,這種錯誤是最容易進行調試的,因為語法錯誤,編譯器連編譯都無法通過(通常會顯示出來具體是哪一行出現錯誤),這樣的話,你就可以直接到出錯的那一行進行修改源代碼了;
(2)、若是經過一段時間的上機練習,對學習編程的初始階段已經較為熟練了、且語法錯誤較少了之後,之後就會遇到更加復雜、並且難於調試的語義錯誤。例如在 C 語言中,對於如下代碼:
void main( )
{
int n ;
scanf("%d", &n) ;
if( n == 100 )
printf(" n is 100 !\n") ;
else
printf(" n is not 100 !\n") ;
}
但是若在邏輯判斷語句:if( n == 100) 中,如果誤將「==」(邏輯等於)寫成了「=」(賦值等於),那麼在 scanf("%d", &n) 語句中,無論你輸入的 n 等於多少,一旦執行 if 語句,那麼 將 100 這個數字賦給變數 n,則該邏輯表達式的值總是 1,程序的運行結果必定總是輸出:n is 100。
而該程序的實際思路是:從鍵盤輸入一個整數,如果該整數等於 100,則輸出:n is 100 !如果輸入的整數不等於 100 的話,則輸出:n is not 100 !
像這樣的邏輯錯誤(在對 C 語言源程序進行編譯時,C 語言編譯器是檢查不出來的),如果沒有豐富的程序調試經驗,程序調試起來就是非常困難的。
(3)、其它的錯誤類型例如:數組越界、非法使用了未初始化的指針變數、未對指針變數進行有效的內存分配,就向那一塊存儲區域讀寫數據,等等。這些都會造成程序崩潰,嚴重的就會造成操作系統崩潰。
H. c程序在vc6可以執行,但使用在線編譯器不可以
c語言沒有引用類型,vc6成功是因為用c++編譯的,在在線編譯器中將你的語言選擇為c++,也能成功編譯。
I. 為什麼我的c語言編輯器無法編譯了
看你新建的項目,名字也沒有,什麼也沒保存只是在軟體上敲了一大堆,保存一下再編譯