本关的编程任务是补全右侧代码片段中Begin至End中间的代码,具体要求如下: 补全execlProcess函数,使用vfork函数创建进程,并在子进程中调用创建一个名为testDir的目录,在父进程中输出"Parent Process"字符串。
时间: 2024-11-15 22:22:53 浏览: 83
简述C语言中system()函数与vfork()函数的使用方法
在C语言中,你可以按照以下步骤补全`execlProcess`函数的代码:
```c
#include <stdio.h>
#include <unistd.h>
#include <sys/wait.h>
void execlProcess() {
// 创建子进程
pid_t child_pid = vfork(); // 使用vfork创建进程
if (child_pid == -1) { // 如果vfork失败
perror("Error creating child process");
return;
} else if (child_pid == 0) { // 如果这是子进程
// 切换工作目录并创建目录
chdir("/path/to/testDir"); // 需要替换为实际路径
mkdir("testDir", S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH); // 创建目录,权限设置
printf("Child Process created directory testDir\n"); // 输出信息
exit(0); // 子进程结束
} else { // 父进程
printf("Parent Process\n"); // 输出"Parent Process"
wait(NULL); // 等待子进程结束
}
}
阅读全文