我正在寫一個程序,它將一個文件名列表存儲爲一個字符串數組。當我把它聲明爲char *文件名[1]或char *文件名有什麼區別?
char *filenames[1]
我沒有錯誤...但是當我做
char *filenames
我得到了一些錯誤。不在聲明中,但在以後使用。例如當我這樣做:
filenames[3]= (char*)malloc(strlen(line) + 1);//here ERROR is : Cannot assign char* to char.
但與第一個聲明與[1]它都很好。我只是想知道他們之間有什麼區別?
相信我我試着在谷歌上尋找答案,但在這種情況下找不到任何好的答案。
的指針兩者都是未定義的行爲。請按照C語言的初學者教程進行操作。在使用之前找出'filenames [3] = ...'的含義。 – juanchopanza