溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

PHP中怎么執(zhí)行C++程序

發(fā)布時(shí)間:2021-07-23 16:33:55 來(lái)源:億速云 閱讀:212 作者:Leah 欄目:編程語(yǔ)言

這篇文章給大家介紹PHP中怎么執(zhí)行C++程序,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

想要充分的掌握C++應(yīng)用程序的技術(shù),那么就要對(duì)C++中的結(jié)構(gòu)、語(yǔ)句、變量、函數(shù)、預(yù)處理指令、輸入和輸出等內(nèi)容進(jìn)行了解掌握,不管怎樣,你都應(yīng)該確保你的系統(tǒng)安全,絕對(duì)不能讓任何其他的腳本程序隨意訪(fǎng)問(wèn)系統(tǒng)內(nèi)部程序。

接下來(lái),我們同樣用條件操作符來(lái)輸出另一句話(huà)。不過(guò)要記住,即使我們不從程序執(zhí)行命令行傳入任何參數(shù),main函數(shù)地argv[]參數(shù)也包含一個(gè)值。同樣地,如果我們從命令行傳入兩個(gè)參數(shù)給程序,程序?qū)⑤敵鋈缦碌匦畔ⅲ?/p>

Theseargumentsare:

***,main函數(shù)逐一的輸出命令行傳入的每個(gè)參數(shù),它用到了一個(gè)簡(jiǎn)單的for(;;)循環(huán)語(yǔ)句,這個(gè)函數(shù)能根據(jù)參數(shù)的個(gè)數(shù)將參數(shù)值一個(gè)一個(gè)的輸出。假如我們傳給程序兩個(gè)參數(shù)”first”和second”,for循環(huán)輸出的結(jié)果如下:

[1]?first  [2]?second

以上是關(guān)于這個(gè)C++應(yīng)用程序的簡(jiǎn)單說(shuō)明,它的功能十分簡(jiǎn)單,就是將命令行傳入的參數(shù)用cout函數(shù)顯示在輸出屏幕上。接下來(lái),我們將編譯這個(gè).cpp文件,如果你在windows平臺(tái)下,需要telnet到所使用的server上。

在這里,我們使用大多Unix機(jī)器上都提供的G++編譯器來(lái)編譯這個(gè)源文件。不過(guò)為了確信你的機(jī)器安裝了G++,你可以輸入如下命令:whichg++。如果G++已經(jīng)安裝了,Unixshell將顯示出G++所在的全路徑。如果沒(méi)有安裝,它將提示你說(shuō)”commandcouldn’tbefound”.你可以在這里下載到G++。

通過(guò)這個(gè)命令,我們就將.cpp文件編譯成了包含機(jī)器代碼的目標(biāo)文件。通過(guò)ls?a命令,你可以發(fā)現(xiàn)在本目錄下出現(xiàn)了一個(gè)新文件sampleapp.o,這就是.cpp源文件被編譯成機(jī)器碼的結(jié)果。不過(guò)我們最終想要的是一個(gè)可執(zhí)行文件,因?yàn)槲覀冞€要輸入如下的G++命令:

Youpassed3arguments.  Theseargumentsare:

現(xiàn)在,可執(zhí)行的C++應(yīng)用程序成生完畢,下面我們將生成一個(gè)能夠通過(guò)web瀏覽器來(lái)訪(fǎng)問(wèn)這個(gè)程序的PHP教本程序。

為了能通過(guò)Internet來(lái)調(diào)用我們的C++應(yīng)用程序,我們需要生成一個(gè)PHP腳本程序。這個(gè)PHP腳本程序?qū)⒂幸粋€(gè)Form表單,以便用戶(hù)能輸入可以傳給程序Sampleapp的參數(shù)。PHP腳本的代碼太長(zhǎng)就不在這里全部列出了,需要的話(huà)可以通過(guò)下面的地址來(lái)下載它。

首先,腳本程序檢查看變量$submit是否有值,這個(gè)變量$submit的值是程序后面的Form表單提交后傳遞過(guò)來(lái)的,它缺省為空值。符號(hào)@的作用是當(dāng)變量$submit的值不存在的時(shí)忽略相關(guān)的錯(cuò)誤信息。
由于變量$submit缺省為空,所以一開(kāi)始執(zhí)行else{}中的代碼,它在瀏覽器上簡(jiǎn)單的顯示一個(gè)Form表單。Form的action屬性設(shè)為變量$PHP_SELF,即表單提交后返回本頁(yè)。同時(shí)Form表單包含了一個(gè)文本輸入條。

這是用來(lái)讓用戶(hù)輸入要傳遞給C++應(yīng)用程序的命令行參數(shù)。一旦我們輸入執(zhí)行命令并提交表單,變量$submit(即按鈕Go的名字)就獲得一個(gè)值,這樣PHP教本將執(zhí)行if{}之間的代碼。

if($args=="")  echo"<h2>Youdidn'tenteranyarguments.</h2>";  else  {  echo"<h2>SampleAppResult</h2>";  $command="/htdocs/sampleapp".escapeshellcmd($args);   passthru($command);  }

變量$args是自動(dòng)產(chǎn)生的,它的值是Form表單中文本輸入條傳過(guò)來(lái)的值。如果沒(méi)有輸入任何信息,程序?qū)⒑?jiǎn)單的告訴用戶(hù)沒(méi)有輸入任何值。

關(guān)于PHP中怎么執(zhí)行C++程序就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI