官术网_书友最值得收藏!

1.2.4 運(yùn)行代碼

成功編譯第一個(gè)C程序后,我們?cè)撊绾螠y(cè)試它呢?如果列出目錄中的文件,你會(huì)發(fā)現(xiàn)一個(gè)新文件,在Linux和macOS系統(tǒng)中名為a.out,在Windows系統(tǒng)中名為a.exe。要運(yùn)行它,只需鍵入其名稱即可。在許多Linux和macOS系統(tǒng)上,可執(zhí)行路徑可能不包括工作目錄。在這種情況下,請(qǐng)使用本地路徑前綴“./”(句點(diǎn)表示當(dāng)前目錄,斜線只是標(biāo)準(zhǔn)路徑分隔符)。圖1-13顯示了輸出結(jié)果。

圖1-14顯示了Windows上的輸出結(jié)果。

圖1-13:在macOS和Linux上打招呼

圖1-14:在Windows上打招呼

在Windows上,.exe后綴將文件標(biāo)記為可執(zhí)行文件。不過(guò),運(yùn)行程序時(shí)不需要包含后綴,只需鍵入a即可。根據(jù)所使用的命令提示符應(yīng)用程序(例如,cmd或PowerShell),你可能還需要使用類似于macOS或Linux的本地目錄前綴(.\)。

不過(guò),作為一個(gè)名稱,“a”非常乏味,而且肯定無(wú)法告訴我們程序的功能。如果你愿意,可以使用gcc命令的-o(輸出)選項(xiàng)為你的程序指定一個(gè)更好的名字。

在Linux和macOS上:

在Windows上:

嘗試執(zhí)行該命令,然后查看文件夾中的文件。你應(yīng)該可以運(yùn)行一個(gè)新生成的hello(或hello.exe)文件。更好用。

發(fā)布代碼

你已經(jīng)編譯好一個(gè)功能完備的C程序!如何讓別人運(yùn)行你的代碼?很遺憾,這個(gè)問(wèn)題很棘手。如果你想與在類似硬件上運(yùn)行與你相同操作系統(tǒng)的人共享a.outhello.exe文件,你只需將程序復(fù)制到他們的機(jī)器上就可以了。但如果你在Windows操作系統(tǒng)上編譯了hello.exe,卻想與macOS用戶共享,那你就不走運(yùn)了。我們編譯了一個(gè)本地應(yīng)用程序。本地應(yīng)用程序可以發(fā)揮硬件的最佳性能,但其代價(jià)是,你需要為你想支持的每個(gè)平臺(tái)提供不同的編譯版本(有時(shí)稱為“二進(jìn)制”)。

不過(guò),你當(dāng)然可以共享源代碼。如果你將hello.c文件通過(guò)電子郵件從Windows發(fā)送到Linux,從macOS發(fā)送到Windows,或從Ubuntu發(fā)行版發(fā)送到Arch,收件人就可以建立自己的開發(fā)環(huán)境并編譯你的代碼。

主站蜘蛛池模板: 晋江市| 连南| 义乌市| 甘谷县| 桐梓县| 牟定县| 冀州市| 兴文县| 普兰店市| 贵定县| 北安市| 五华县| 西乌珠穆沁旗| 来安县| 攀枝花市| 祁门县| 高密市| 琼结县| 昌邑市| 凤凰县| 宁波市| 古浪县| 西华县| 桃源县| 酉阳| 扎赉特旗| 定边县| 甘南县| 东明县| 天水市| 财经| 石屏县| 尤溪县| 泗阳县| 容城县| 永福县| 衢州市| 独山县| 绍兴市| 澄迈县| 河东区|