2013-09-22 116 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標準庫解析問題。