У меня есть вопрос относительно указателей на цвет.Первый символ указателя
Я читаю файл на 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: if (configvalue[0] == "#")
, компилятор выдает ошибку: comparison between pointer and integer
.
Как я могу проверить, является ли первый символ строки указателем, указывающим на определенное значение?
Сравнение строк в C с 'STRCMP()', а не '' == (так 'если (зЬгстр (configvalue, "#") = = 0) 'может быть правильным). И '' # "' является строкой; если вы хотите сравнить символ ''#'' использовать одинарные кавычки, а не двойные кавычки (так что 'if (configvalue [0] == '#')' тоже может быть прав). –
спасибо jonathan, последнее замечание помогло с одиночными кавычками – Dezzy