2013-09-22 117 views
0

我有这样的代码:eclipse CDT源代码解析器错误?

void AlgoEvaluation::init(const char * filename) 
{ 
    FILE *fp = fopen(filename, "r"); 
    int n; 
    fscanf(fp, "%d", &n); 
    int case_num; 
    double weight, arcgis_time; 
    for(int i = 0; i < n; ++i) { 
     fscanf(fp, "%d%lf%lf", &case_num, &weight, &arcgis_time); 
    } 
} 

在Eclipse CDT编辑器的代码都强调在波浪号和fopenfscanf功能“的fopen”当我把鼠标光标移动到它无法解析

代码应该没有问题,但我想知道为什么Eclipse给出了上述信息,这是令人不安和误导的。我不熟悉Eclipse CDT设置,我怎么解决这个问题?

谢谢。

+0

您是否在代码中包含'stdio.h'?在该头文件中定义了“fopen”和“fscanf”。 – urish

+0

@urish是的,包括在内。 – lulyon

回答

0

我发现问题在于使用CDT创建新项目时的Toolchains选项。

随着Toolchains选项(跨GCC,MSVC),我选择跨GCC,而在我的窗户上,这是没有gcc安装!所以选择应该是MSVC,因为MSVC是用Visual Studio安装的。

MSVC选择后解析C标准库解析问题。