色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > exec執(zhí)行普通文件和解釋器文件的區(qū)別

          exec執(zhí)行普通文件和解釋器文件的區(qū)別

          作者: 時(shí)間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          (1) 在命令行輸入:./a.py arg1 arg2;

          (2) l(./a.py,arg1,arg2,(char*)0));

          (3) l(./a.py,”xxx”,arg1,arg2,(char*)0));

          方式(1)和方式(2)不等價(jià),因?yàn)榉绞?1)中arg1會(huì)被當(dāng)做第二個(gè)參數(shù)傳遞給解釋器,而方式(2)中arg2會(huì)被當(dāng)做第二個(gè)參數(shù)傳遞給解釋器。方式(1)和方式(3)是等價(jià)的。

          對(duì)于foo:

          (1) 在命令行輸入: ./foo arg1 arg2;

          (2) l(./foo,arg1,arg2,(char*)0))

          方式(1)和方式(2)是等價(jià)的。

          4. 回答開始的問題

          為了達(dá)到命令行方式:test.py arg1 arg2的效果,使用execl(test.py,arg1,arg2,(char*)0))肯定是不行的,因?yàn)閍rg1會(huì)被忽略,提示缺少參數(shù)。正確的方式是:execl(test.py,”xxx”,arg1,arg2,(char*)0)),這里”xxx”代表任意字符串,不過一般會(huì)使用名,即”test.py”。

          為了達(dá)到命令行方式:python test.py arg1 arg2的效果,使用execl(python,”test.py”,arg1,arg2,(char*)0))也是不行的,因?yàn)閠est.py會(huì)被忽略,arg1會(huì)被當(dāng)做第一個(gè)參數(shù)傳給python解釋器。正確方式是:

          execl(“python,”xxx”,”test.py”,arg1,arg2,(char*)0)),這里”xxx”代表任意字符串,不過一般會(huì)使用名,即”test.py”。


          上一頁 1 2 3 下一頁

          關(guān)鍵詞: exec 普通文件 解釋器文件

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉