在ubuntu 11.10 在编译一个fork() 的程序有问题
代码是这样的
- C/C++ code
#include<stdio.h>#include</usr/include/x86_64-linux-gnu/sys/types.h> #include<unistd.h>void main(){ pid_t p1,p2; p1=fork(); if(p1<0) printf("error in fork!"); else if (p1 == 0) printf("child process pid: %d\n",getpid()); else printf("parent process pid: %d\n",getpid()); p2=fork(); if(p2<0) printf("error in fork!"); else if (p2 == 0) printf("child process pid: %d\n",getpid()); else printf("parent process pid: %d\n",getpid());}编译 gcc fork0.h -o fork0 通过后
chmod +x
sudo ./fork0
然后就出现
./fork0: 1: Syntax error: word unexpected (expecting ")")
研究了老半天,请问这是什么问题,谢谢!
[解决办法]
#include</usr/include/x86_64-linux-gnu/sys/types.h>
当用
#include <sys/types.h>
[解决办法]
gcc fork0.h -o fork0
神马基础啊,.h是源文件吗?。。。
gcc -o fork0 fork0.c
[解决办法]
我也是ubuntu11.10
头文件改成了#include<sys/types.h>
编译/运行都没有问题
所以还是你的头文件定义不对
- C/C++ code
jimmy@MyPet:~/code/learnc$ makegcc -Wall -g -o test test.c -std=c99jimmy@MyPet:~/code/learnc$ ./test parent process pid: 3256parent process pid: 3256child process pid: 3257child process pid: 3258parent process pid: 3257child process pid: 3259jimmy@MyPet:~/code/learnc$