2016-03-15 48 views
-2
void allocateChar(string type, string var, int length, char initToChar){ 
    char *Thingy = (char*)myMalloc(length); 
    char var = initToChar; 
    my_free(Thingy); 

} 

我發現了對char變種誤差= initToChar,我不知道爲什麼我得到它,因爲根據我在Google上看到的,這個錯誤發生在爲同一事物命名兩個不同的事情。然而,我不相信我這麼做,因爲我將用戶輸入的任何名稱作爲字符串,然後將其設置爲字符的名稱。錯誤:用不同類型的 '變種' 的重新定義: '字符' VS '字符串'(又名 'basic_string的<炭,char_traits <char>,分配器<char>>')

+1

您在參數中使用了名稱'var',並且在局部變量的聲明中再次使用了名稱'var',因此導致錯誤。您想做什麼? – MikeCAT

+0

除非證明是錯誤的,否則我敢打賭編譯器是正確的。 – Olaf

+1

「我不相信我在做這件事」不要相信調試中出了什麼問題。 – MikeCAT

回答

0

你說:

... However, I don't believe i'm doing that ...

這是不正確的,你是。您將在同一範圍內創建兩個具有相同名稱的不同變量。這是不允許的。