#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>
#include <sys/wait.h>
int main(int argc, char *argv[]) {
// 获取数字
int num;
sscanf(argv[1], "%d", &num);
// 初始化随机数生成器
srand(time(NULL));
for (int i = 0; i < num; i++) {
// 创建新进程
pid_t pid = fork();
if (pid == 0) {
// 子进程等待随机时间
int sleepTime = rand() % 10 + 1;
sleep(sleepTime);
// 打印并退出
printf("Child process %d exited after waiting %d seconds\n", i + 1, sleepTime);
exit(0);
}
}
// 等待所有子进程退出
int status;
for (int i = 0; i < num; i++) {
wait(&status);
}
return 0;
}
我在clion运行后没有任何输出
但我想要的输出是这样的