Dưới đây là mã của tôi (được tạo ra chỉ để kiểm tra fork()):Tại sao trình biên dịch của tôi không chấp nhận fork(), mặc dù tôi có bao gồm <unistd.h>?
#include <stdio.h>
#include <ctype.h>
#include <limits.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
int main()
{
int pid;
pid=fork();
if (pid==0) {
printf("I am the child\n");
printf("my pid=%d\n", getpid());
}
return 0;
}
tôi nhận được cảnh báo sau đây:
warning: implicit declaration of function 'fork'
undefined reference to 'fork'
Điều gì là sai với nó?
Bạn đã cài đặt các tiêu đề của thư viện C chưa? Làm thế nào bạn gọi trình biên dịch của bạn? –
gcc test.c -pedantic -Wall -o test.exe – Suspended
Bạn có chắc chắn fork() là một phần của stdio.h không? nó không phải là theo http://www.cplusplus.com/reference/clibrary/cstdio/. có thể có xung đột với một tệp tiêu đề khác mà bạn đang đưa vào? – moesef