最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

exec系統(tǒng)調(diào)用

2022-04-24 22:28 作者:GXTon_阿通  | 我要投稿

可以理解exec就是替換了上下文,實(shí)際上沒有進(jìn)行系統(tǒng)的調(diào)用.

execve()函數(shù)是另外5個(gè)函數(shù)的基礎(chǔ).


六個(gè)函數(shù)實(shí)現(xiàn)的功能是一樣的,

區(qū)別在于使用方法,下面是用法的區(qū)別:

下面進(jìn)行分別的舉例說明:

為了方便,只摘出其中的一部分.

目的是把子函數(shù)換成ls的功能.

?再總結(jié)一下六個(gè)exec函數(shù)的特點(diǎn):

1,名字中包含l,其參數(shù)個(gè)數(shù)不定.(暫且認(rèn)為l就是long,長(zhǎng)傳入的參數(shù)長(zhǎng),是不定的.)

2,名字中包含v,其參數(shù)是用argv的數(shù)組列表傳入.

3,名字中包含p,其說明自帶有"path"路徑,所以就不需要傳入路徑了,而是直接傳入運(yùn)行的文件明file.

4,名字中包含e,其說明可以指定環(huán)境變量envp.(可以指定運(yùn)行的環(huán)境.)



//為了方便記憶,可以聯(lián)想:

可以記成viper就是vip的人兒,然后? ?

v代表v? ? i粗略代表l? ?p代表p? e代表e

要注意名字中有上面字符,都代表什么意思...

//?下面是execl,名字中有l(wèi),所以就是傳入的參數(shù)是不固定的.最后一個(gè)以NULL結(jié)尾.

//?名字中沒有p,所以要傳入路徑名.

//?按照格式去套用,第一個(gè)參數(shù)就是運(yùn)行程序的路徑. "/bin/ls"

//?第二個(gè)參數(shù)是"ls"? 第三個(gè)參數(shù)是 "-a"

//?最后沒有要傳輸?shù)牧?就直接寫NULL,表示結(jié)尾了.?

? ? execl("/bin/ls","ls","-a",NULL);

上面的第二個(gè)參數(shù)?ls和第三個(gè)參數(shù) -a,其實(shí)可以組合在一起的.

? ? execl("/bin/ls","ls -a",NULL);

下一個(gè)例子:?

?//?有v,所以說明傳入的是一個(gè)argv字符數(shù)組,而不是字符.

//?沒有p,所以要傳入,路徑名.

//?所以要先定義一個(gè)字符串的數(shù)組:? char *arg[]={"ls","-a",NULL};

? ? execv("/bin/ls",arg);

下一個(gè)例子:

//?名字中有l(wèi),說明傳入的參數(shù)是不定數(shù)目的,沒有v,所以傳入的是字符.以NULL結(jié)尾.

//?有p,說明有路徑了,只需要傳入文件名.

? ? execlp("ls","ls","-a",NULL);

??

下一個(gè)例子:

//?名字中有v,所以參數(shù)傳入的是字符串的數(shù)組.

//?有p,所以只需要傳入運(yùn)行的程序名:?ls即可.

//?char *arg[]={"ls","-a",NULL};

? ? ? execvp("ls",arg);

?

下一個(gè)例子:

//?名字中有l(wèi),說明傳入的參數(shù)是不定長(zhǎng)的.

//?名字中有e所以,可以指定運(yùn)行環(huán)境.這里沒有指令,所以用NULL

//?名字中沒有p,所以,用目錄名.

execle("/bin/ls","ls","-a",NULL,NULL);

下一個(gè)例子:

execve("/bin/ls",arg,NULL);


exec系統(tǒng)調(diào)用的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
玉山县| 宁城县| 沽源县| 兰考县| 乐亭县| 定襄县| 济阳县| 黑河市| 梁河县| 建昌县| 定结县| 龙泉市| 水富县| 光山县| 中西区| 烟台市| 沙河市| 桓台县| 大城县| 商河县| 麦盖提县| 武陟县| 治多县| 涡阳县| 古蔺县| 鄂伦春自治旗| 花莲县| 星子县| 平乐县| 东乡| 调兵山市| 南溪县| 共和县| 高清| 大同县| 辽源市| 濮阳市| 蓬安县| 陕西省| 阿拉善左旗| 牡丹江市|