為什麼在windows下不能直接編譯執行c或c程式而

時間 2021-08-30 20:55:56

1樓:提大刀砍鬼子

就相當於你編寫了個程式,然後編譯執行後會生成一個exe檔案,而windows就是這麼類似的東西,可以簡單的看成機器語言(表示電腦可以直接執行)。那麼你寫的程式還只是高階語言,不會被機器理解,要經過編譯才可以執行。你可以試試,把編譯執行後的exe檔案放到沒安裝c++或者之類平臺的電腦上也是可以執行的。

希望有用

2樓:匿名使用者

寫好的c程式是需要編譯,連結之後才能執行的。

編譯是需要編譯器的,而作業系統本身沒有整合編譯器。

安裝的作業系統是已編譯好的。執行已經編譯好的程式是不需要編譯器的。

3樓:我是周小傑

windows只是用一個系統,是程式執行的平臺。c或c++是高階語言,是不能被執行的,需要通過編譯軟體進行編譯才能執行。

4樓:

我覺得這是由c/c++的性質決定的,他們是高階語言,與機器語言不是一一對應的,必須要編譯成機器語言才能執行。

5樓:海獅

其實你是把商業問題和技術問題混為一談了。

首先,windows不是純c語言編寫的,應該說是類c語言編寫的。

其次,不是不能執行c語言的程式,也不是沒有編譯器。而是執行自定義c或者c++程式是一個功能,這個功能的實現所需要的開發費用是非常高昂的,而且售出的比較少。

所以實際上c和c++的編譯器比windows要貴很多。如果把編譯器成本分攤到windows裡,又會增加windows的**。

這些實際上是商業策略,需要很久才能理解。

win10系統用dev c++寫c語言時,編譯通過,執行時卻顯示exe檔案執行錯誤。

c語言問題——為什麼一下程式可以通過編譯卻無法執行?dev-c++編譯器的

6樓:毛英明

你的標頭檔案有錯誤:修改如下

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

#include "malloc.h"\\此處有修改typedef struct node

node;

main()

printf("連結串列遍歷\n");

q=head;

while(q!=null)

getch();//輸入**}

7樓:匿名使用者

通過編譯,卻無法連結或者執行,是因為有該檔案的申明,卻沒有該申明的lib或者dll或者原始碼。

解決方案:

1.在dev中link選項中預設新增alloc.c 或者 alloc.lib

2.在工程檔案中新增alloc.c或者alloc.lib3.選著包含malloc的宣告檔案,一般應該在malloc.h中

8樓:秋楓

去掉#include "alloc.h"就可以了

9樓:林緣雨夢

先搜尋devc++安裝目錄下有沒有alloc.h檔案

金蝶K3在Windows7系統下不能引出單據資料

win7 k3也遇到相同問題,結果解決其他問題時把這個問題也解決了,辦法是去能夠正常引出報表的電腦上,把kdfu.dll和kdspreadu.ocx拷過來,放到如下路徑中,c windows syswow64 kdfu.dll和c program files x86 common files kin...

在什麼情況下不能去游泳?為什麼?

女人的話 是在月經週期不能游泳。所有人的話 應該是在身體不舒服的時候吧。希望採納。什麼情況下不宜游泳?雖說要想有好的健身效果,貴在堅持,但當自身情況和外界環境不允許參加運動時,就要暫停。否則就會適得其反,不僅不能增強體質,還會出現損傷或者誘發疾病。在以下情況下不宜運動 a.感冒 發燒時。b.過量飲酒...

為什麼人不能一直活著,為什麼人不能一直活著?

細胞程式性凋亡,能無限繁殖的細胞只有癌細胞,正常細胞都有一定的週期。細胞程式性凋亡之後就是個體的死亡。 穿越芬芳記憶 世界上沒有任何東西是永恆的 都會漸漸逝去,遠離。也許,人活著並不是要延長生命而活著,而是要你去創造,去體驗那個屬於你的世界,珍惜現在。生命不在乎天長地久,只在於曾經擁有 蘇沐炎 活久...