2017-09-19 54 views
0

當我試圖運行下面的代碼我得到這樣的警告:C - 不兼容的整數轉換指針?

warning: incompatible pointer to integer conversion assigning to 
    'char' from 'char *'; dereference with * [-Wint-conversion] 
    namesList[0]=name1; 

這裏是我的代碼:

int main(){ 
    char namesList[20]; 
    char *name1="Nelson Mandela"; 
    namesList[0]=name1; 
    return 0; 
} 

如何擺脫這個警告?謝謝。
編輯:喬納森·萊弗勒幫我做namesList[0] = *name1;

+2

指定一個字符而不是一個字符指針。例如,'namesList [0] = * names1;'。或者改變一個變量定義。這取決於你想要做什麼 –

+1

你想分配一個字符還是整個字符串?查看後面的'strcpy'。 –

+0

@JonathanLeffler謝謝你的工作:) – fredjohnson

回答

0

看你怎麼寫你的代碼修復它,它似乎想要namesList是一個字符串數組,所以要解決它,你應該更改您的代碼:

int main(){ 
    char *namesList[20]; 
    char *name1="Nelson Mandela"; 
    namesList[0]=name1; 
    return 0; 
} 
相關問題