我正在尝试编译在Ubuntu上使用这些库的代码
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <unistd.h>
但编译器返回此错误
sig.c:3:9: error: #include expects "FILENAME" or <FILENAME>
#include <signal.h>
^
也适用于unistd.h
有没有办法解决这个问题而无需重新安装Ubuntu?
答案 0 :(得分:2)
编译器报告语法错误,而不是丢失的标头。您的问题中的代码看起来是正确的,但必须有一些您没有看到的奇怪字符,可能看起来像<
字符或空格但实际上不是。
尝试输入
head foo.c | cat -A
在shell提示符下;这将告诉你源文件中的真实内容。 (当然,用foo.c
代替你的实际文件名。)