execv 函式的應用

2021-08-28 04:26:14 字數 1444 閱讀 3562

execv函式族:系統來呼叫某程式模組

int execl(const char *path, const char *arg, ...);

int execlp(const char *file, const char *arg, ...);

int execle(const char *path, const char *arg,

..., char * const envp);

int execv(const char *path, char *const argv);

int execvp(const char *file, char *const argv);

本質:1、呼叫此函式時(成功的執行),呼叫的程序模組會替換現有的程序資訊。

元素為null

2、execve才是系統核心函式,上述都會呼叫此函式來完成的功能

從指定路徑下查詢    

int execv(const char *path, char *const argv);

path:可執行檔案的路徑

argv:就是使用者傳遞的引數  argv[0]  argv[1]  argv[2]注:最後乙個陣列    

int execl(const char *path, const char *arg, ...);        

path:可執行檔案的路徑

arg:傳遞的引數(一定要傳遞null)

execv 通過 argv 來獲取 ls -l /  的路徑,來替代系統的 /bin/ls 路徑.

#include#includeusing namespace std;

//程序:分配空間

int main()

else if(0==pid)//子程序模組:execv替換程序模組

; //絕對路徑

// execv("/bin/ls",argv);

//從環境變數中查詢某模組 **p

execvp("ls",argv);

//execl("/bin/ls","ls","/",null);

} //父子程序都會執行:子程序中ls替換了子程序的資料區和**區

int i=0,result=0;

for(i=0;i<=100;i++)

cout<

#include#include#include#include#includeusing namespace std;

int main()

else if(pid==0)//子程序讀取父程式的內容

;//100個位址

int i=0;

//父程序

while(1)

else if(0==pid)

}return 0;

}

教室的那一間  我怎麼看不見

消失的下雨天  我好想再淋一遍

《晴天》

ASP應用中的應用函式

經常寫些系統,那麼一般都是從登入程式開始,每接乙個系統就寫一次登入,好麻煩。乾脆直接做個登入驗證函式吧,對我來說,大都情況可以勝任了 function chk regist requestname,requestpwd,tablename,namefield,pwdfield,reurl dim n...

函式指標的應用

函式的指標 include using namespace std void fun1 int a,int n void fun2 int a,int n int main fun a,5 步驟4 cout fun fun2 fun a,5 fun fun1 fun a,5 return 0 函式指...

statfs函式的應用

statfs函式的應用 1 include 或者 3 int statfs const char path,struct statfs buf 4 int fstatfs int fd,struct statfs buf 引數 path 位於需要查詢資訊的檔案系統的檔案路徑名。fd 位於需要查詢資訊...