導航:首頁 > 操作系統 > linuxc控制台

linuxc控制台

發布時間:2023-08-10 22:56:05

『壹』 編寫linuxC程序後,運行命令是指什麼

1、在控制台編譯運行一個C程序,在windows上的c語言編譯器為cl.exe,在linux平台上的c語言編譯器是gcc。
2、在命令提示符中,執行cl
test.c(test.c是c語言源碼文件)。下圖是用cl編譯器編譯main.cxx的誰的,並且執行生成的程序main.exe。

『貳』 Linux下用c編譯的out文件雙擊不能運行是怎麼回事

1、在Linux圖形界面無法雙擊運行gcc生成的可執行文件,一般是因為編寫的程序是控制台程序,而不是GUI程序,不是程序不運行,而是因為沒有GUI界面,所以用戶看不到效果。正確的作法是在終端中運行。


2、如下圖所示的hello world的C語言代碼 ,在vim中通過外置命令將其編譯輸出為hello的可執行文件,通過&&同時執行後面的./hello,馬上就能看到效果。

『叄』 C語言控制台程序,中文輸出變成亂碼,怎麼解決

這里涉及到一個字元在源代碼(文本)中,編譯好的二進制文件中,以及最後控制台輸出編碼形式的區別.
首先,要明確一點:C(語言/程序)並不理解ANSI,UTF-8以及任何其他編碼.它只知道處理你給它的字元的二進製表示.
在簡體中文Windows下,默認的文本保存編碼是ANSI(即GBK);Linux下根據系統locale設定,一般應該是(zh_CN.UTF-8).(以下基於簡體中文Windows)
1)對於源文件中保存的"中文"這個字元串,VS2008看到的就是"0xd6d0"和"0xcec4"的形式(默認ANSI編碼得到).但編譯器才不管是不是GBK神馬的,它就管那串數字.
區別,MinGW看到的是"0xe4b8ad"和"0xe69687"(gcc默認UTF-8).注意,用MinGW編譯的源文件中有中文寬字元必須保存為UTF-8編碼.
2)然後,在二進制文件中的存儲形式,對傳統的字元串(char str[] = "中文";),編譯器什麼都不做,直接把那串數字(如"0xd6d0","0xcec4")搬過去塞進二進制文件.
但對於寬字元串(wchar_t wstr[] = L"中文";),編譯器會將其做轉換,轉換成Unicode編碼格式(在Windows是UTF-16,而Linux下是UTF-32).如"中文"的16位Unicode是"0x4e2d"和"0x6587",然後把這串轉換後的數字("0x4e2d","0x6587")塞進二進制文件中.(這里VS和MinGW做的沒有區別)
這里有點需要注意,編譯器必須知道你的源文件保存的編碼!如VS默認是ANSI編碼,如果你用UTF-8保存.c源文件去用VS打開看一定是亂碼.同理如果你用mingw編譯ANSI編碼保存的源文件,也會出錯!(但可以修改編譯選項解決,見文章末尾) 在本文這里這個原因其實很好理解,因為編譯器需要知道,如果它要將一個保存在文件中的字元轉成寬字元時,是從什麼編碼轉到Unicode.(可見上述VS是GBK->Unicode,而MinGW是UTF-8->Unicode)

閱讀全文

與linuxc控制台相關的資料

熱點內容
windows下編譯python 瀏覽:607
linux藍牙連接 瀏覽:898
安卓qq郵箱格式怎麼寫 瀏覽:431
如何電信租用伺服器嗎 瀏覽:188
編程中計算根號的思維 瀏覽:183
可愛的程序員16集背景音樂 瀏覽:448
軟體代碼內容轉換加密 瀏覽:797
什麼app看電視不要錢的 瀏覽:16
烏班圖怎麼安裝c語言編譯器 瀏覽:280
plc通訊塊編程 瀏覽:923
我的世界伺服器怎麼清地皮 瀏覽:422
ftp伺服器如何批量改名 瀏覽:314
網易我的世界伺服器成員如何傳送 瀏覽:268
公司雲伺服器遠程訪問 瀏覽:633
法哲學pdf 瀏覽:638
清大閱讀app是什麼 瀏覽:447
怎麼用qq瀏覽器整體解壓文件 瀏覽:587
肺組織壓縮15 瀏覽:271
安卓手機為什麼換電話卡沒反應 瀏覽:797
諸子集成pdf 瀏覽:340