當我嘗試比較一個指針數組(最初是NULL)和字符指針:指針和整數警告的比較
int main(int argc, char **argv){
char **list = (char**)malloc(20*sizeof(char)+1);
char *input = "La li lu le lo";
if(*list[0] != input[0]) { //or if(list[0][0]!=input[0])
printf("false: %s", strdict[0]);
}
}
我不斷得到一個警告:
指針和之間的比較整數
必須做些什麼來消除此警告? 如果我修改爲:
if(*list[0] != input[0])
警告被刪除,但該程序崩潰。 感謝您的幫助提前。
定義「無法運行」。它不編譯?它崩潰?它說「假:......」? – LSerni
好吧,1)刪除malloc'cast'並關閉你正在比較'char *'list [0]和'char' input [0]的'('。2)。在C中無效;你需要做'list [0] [0]!= input [0]'3)'list'未初始化 – Jack
那麼它肯定不會編譯。失蹤 」;」和一個不應該在那裏的大括號:P –