?? exec.c
字號:
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main(int argc, char *argv[])
{/* C program forking a separate process */
int pid;
int ReturnValue; //返回值。
char * TheArgv[]={"/bin/ls",NULL}; //參數表。
/* fork another process */
pid=fork();
if (pid<0) { /* error occurred */
fprintf(stderr, "Fork failed");
return 0;
}
else if (pid==0) { /* child process */
printf("Executing Child.\n");
ReturnValue=execv("/bin/ls", TheArgv);
}
else { /* parent process */
/* parent process will wait for the child to complete */
wait(NULL);
printf("Child Complete.\n");
// printf("ReturnValue:%d.\nENOENT:%d.\nEFAULT:%d.\nEACCES:%d.\n",ReturnValue,ENOENT,EFAULT,EACCES);
/* switch (ReturnValue)
{
case ENOENT: //找不到文件或路徑。
printf ("找不到文件或路徑。\n");
break;
case EFAULT: //數組argv和envp忘記用NULL結束
printf("數組argv和envp忘記用NULL結束。\n");
break;
case EACCES: //沒有權限。
printf("沒有權限。\n");
break;
default:
printf("未知錯誤。\n");
break;
}; //switch*/
return 0;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -