请告诉我以下代码有什么问题? 由于某种原因,编译器拒绝识别O_DIRECT标志。
#define _GNU_SOURCE
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char **argv) {
int fd;
fd = open(argv[1], O_RDONLY | O_DIRECT);
return 0;
}
答案 0 :(得分:1)
不要担心。它只是索引解析器,它决定文本编辑器语法突出显示和(理想情况下)将标识符链接到定义。
您可以通过从编译器转储预定义的宏并将它们提供给索引配置控制面板来解决此问题。还要仔细检查它是否有正确的标题搜索路径。
或者只是忽略/禁用这些警告。