我有一個關於char指針的問題。指針的第一個字符
我正在閱讀C文件,使用fgets
。這是一個簡短的概述,可以讓你瞭解我想做些什麼:
char configline[configmax_len + 1]; //configmax_len is the max value I need
while(fgets(configline, sizeof(configline), config){ //config is the file
char *configvalue = strtok(configline, " ");
if (configvalue[0] == "#"){
continue;
}
…
}
char * configvalue
是一個指向當前行被讀取。我想檢查的是該行的第一個字符是否爲「#」。
但是當我執行if語句時:編譯器會拋出一個錯誤:comparison between pointer and integer
。
如何檢查指針所指向的字符串的第一個字符是否爲某個值?
比較C字符串與'的strcmp()','不'==(所以'如果(STRCMP(configvalue, 「#」)= = 0)'可能是對的)。 ''「#」'是一個字符串;如果你想比較字符''#''使用單引號,而不是雙引號(所以if(configvalue [0] =='#')'可能是正確的)。 –
謝謝jonathan,最後一句話幫助了單引號 – Dezzy