1樓:匿名使用者
linux的c語言程式要想拿到windows下面執行,那麼得重新編譯一次。。。不能直接執行的
2樓:御含靈
有些c語言可以直接在windows下編譯的
如果不行裝一個cygwin吧 然後可以裝gcc編譯
3樓:豬旺哥
源**可以移植,目標程式不能移植,哈~~ 儲存管理、程序管理、裝置管理都不一樣嘿~~
4樓:全盼芙儲碩
先確保你的c程式沒有呼叫win下專有的api,比如win32api或.net等,
如果有,就需要另寫介面層。最好能只呼叫posix庫或跨平臺的庫,或完全原創的演算法庫。
c程式滿足和win專有介面能脫離直接關係,就能在linux下編譯。
5樓:匿名使用者
英文是 port
中文是移植
不過實際上,要幹很多工作,具體看你這個程式的函式庫呼叫了。cygwin 都不知道那就別考慮這個問題了。
linux下編譯的c語言程式,怎樣拿到windows下執行?
6樓:甫清禕
linux下和windows的程式設計通常是很難互相支援的,不然現在也不會出現windows和linux的市場爭奪了
隨便的一個遊戲或者軟體如果可以輕鬆的移植平臺,恐怕微軟就離倒閉不遠了
7樓:匿名使用者
linux 程式不能在windows 下用!!
你把源**在windows下再編譯一邊就可以了
8樓:桫_欏
上邊兩位回答的已經很好了 ,呵呵 ,逛逛,留個腳印
linux下的程式如何在windows下執行
9樓:匿名使用者
本質區別是這樣的,linux下用的是伯克利socket,windows底下用的winsocket.
兩者其實是大同小異的,不同的地方在以下幾點:
1 標頭檔案不同,在linux下用到的關鍵標頭檔案
windows下用到的是
2 socket的初始化不一樣,在windows下要有一個wsastartup,而linux 下沒有。
3 具體的細節不一樣,linux下的c和windows下的c的一些語法有些出入,你自己找找。
下面我把windows下的socket通訊的最基本的結構給你,你對照著修改就可以了,一下的程式我除錯了一下,編譯過了。
客戶端#include
#include
void main()
if ( lobyte( wsadata.wversion ) != 1 ||
hibyte( wsadata.wversion ) != 1 )
socket sockclient=socket(af_inet,sock_stream,0);
sockaddr_in addrsrv;
addrsrv.sin_addr.s_un.s_addr=inet_addr("127.0.0.1");
addrsrv.sin_family=af_inet;
addrsrv.sin_port=htons(6000);
char recvbuf[100];
recv(sockclient,recvbuf,100,0);
printf("%s\n",recvbuf);
send(sockclient,"this is lisi",strlen("this is lisi")+1,0);
closesocket(sockclient);
wsacleanup();
} 伺服器端
#include
#include
void main()
if ( lobyte( wsadata.wversion ) != 1 ||
hibyte( wsadata.wversion ) != 1 )
socket socksrv=socket(af_inet,sock_stream,0);
sockaddr_in addrsrv;
addrsrv.sin_addr.s_un.s_addr=htonl(inaddr_any);
addrsrv.sin_family=af_inet;
addrsrv.sin_port=htons(6000);
listen(socksrv,5);
sockaddr_in addrclient;
int len=sizeof(sockaddr);
while(1) }
10樓:鍵盤雀躍
找移植版,linux下的程式大多是自由軟體,有源**,可以自行編譯。
11樓:影sun雲
這個兄弟真會開玩笑,兩個系統核心都不一樣,怎麼能行!
12樓:匿名使用者
wine可以執行部分程式
13樓:匿名使用者
在windows中安裝cgwin或mingw軟體即可實現linux中程式到windows中移植。
cygwin是許多自由軟體的集合,最初由cygnus solutions開發,用於各種版本的microsoft windows上,執行unix類系統。cygwin的主要目的是通過重新編譯,將posix系統(例如linux、bsd,以及其他unix系統)上的軟體移植到windows上。cygwin移植工作在windows nt、windows 2000、windows xp以及windows server 2003上比較好.
mingw的庫,可以跟windows本地的msvcrt庫(windows api)一起工作。mingw佔用記憶體、硬碟空間都比較少,能夠連結到任意軟體,但它對posix規範的實現沒有cygwin庫完備。
14樓:我是何方
如何在windows中啟用linux子系統
linux下的c函式怎樣才能在window下執行
15樓:
可以在 windows 安裝 cygwin,這就有了 gcc 編譯器。
cygwin是一個在windows平臺上執行的unix模擬環境,是cygnus solutions公司開發的自由軟體。
它對於學習unix/linux操作環境,或者從linux到windows的應用程式移植,或者進行某些特殊的開發工作,尤其是使用gnu工具集在windows上進行嵌入式系統開發,非常有用。隨著嵌入式系統開發在國內日漸流行,越來越多的開發者對cygwin產生了興趣。
16樓:
去下個cygwin吧,可以在windows平臺上執行的unix模擬環境,佔用比虛擬機器小多了。
17樓:匿名使用者
不行 可執行檔案格式不一樣, 系統函式不一樣, linux是elf window是pe
18樓:匿名使用者
安裝 cygwin 就可以了
19樓:匿名使用者
cygwin可能能幫你解決這個問題。或者用虛擬機器linux不裝圖形介面。
20樓:匿名使用者
保留源c檔案,win開某編譯器編譯
21樓:匿名使用者
學linux程式設計的話直接裝個linux不就好?
22樓:匿名使用者
直接單裝linux跑吧
如何在linux下執行python程式?
怎樣將windows下寫的c程式在linux下編譯執行,謝謝?
23樓:
先確保你的c程式沒有呼叫win下專有的api,比如win32api或.net等,
如果有,就需要另寫介面層。最好能只呼叫posix庫或跨平臺的庫,或完全原創的演算法庫。
c程式滿足和win專有介面能脫離直接關係,就能在linux下編譯。
linux下用c寫的程式生成可執行檔案怎麼才能在windows下執行呢?有沒有相關外包?
24樓:
你是想一處編譯到處執行? 是否可以執行時編譯, 根據不同的作業系統選擇不同編譯器
25樓:你還我賬戶
要重新編譯的。。。有些呼叫的庫函式都會不同。。。
26樓:賣萌犯法
用cygwin.........
linux下用gcc生成的檔案在windows下怎麼不能執行?
27樓:茆知蕢炫明
暈,linux下的執行檔案本來就不能在windows下執行。
linux的執行檔案一般是e2f格式。windows則是pe格式的。
如果你的程式是c寫的。你可以將其源**在windows下用vc之類的編譯,運氣好的話,修改不多就可以執行了。
linu下的c與windows下的c的區別
linux 庫 編輯器 編譯器 都是分別安裝的 運用靈活windows 一般是整合開發環境,包含了上述東西c都有個標準庫,那個是一樣的,其他的就不一定一樣了,linux下的庫可以等你需要時再安裝進系統,還有相關文件說明 linux下有c 的 其實linux下有個很強大的glibc庫,他將c重新封裝,...
想在C盤裝WIN7,怎么做,想在C盤裝WIN7,怎麼做?
首先你的c盤空間太小了,最好在20g左右,我裝的win7旗艦版13g,想裝的話要把硬碟重新分割槽。你的c盤現在是xp的話,安的時候它會提示你是要升級安裝,還是全新安裝。升級安裝會有很多問題,全新安裝的話如果不格式化,你的xp系統還是會保留在c盤,但是不可用了,還有你的空間也不夠。如果不想格式化硬碟重...
linu下的c程式設計和windows下有什麼區別?越詳細越好
系統的話一點都沒有區別。只是你選擇的軟體會稍有不同。但是作為c的語法一點都沒有變。推薦linux下使用geany。中文的,操作方便,體積小。用起來十分爽。linux 簡單的說跟 windows 一樣是一種作業系統,只是兩者之間的使用方法和習慣有所區別。具體的區別其實很大,不過已經不是能在這裡說清楚的...