Редактировать: Это дубликат, и я отметил его как таковой. См. [Вопрос] Why is "a" != "a" in C?C: Как сравнить две строки?
Так что я пытаюсь распечатать конкретное сообщение в зависимости от поля внутри структуры. Поле содержит строку «1».
Всякий раз, когда я запускаю printf("%s", record.fields[2]);
, выход 1
; У меня нет предупреждений о формате.
Однако, когда я проверяю поле против соответствующей строки (в данном случае, «1»), он не проходит проверку:
if (record.fields[2] == "1") {
printf("The field is 1!");
}
В случае record.fields является '' символ *, OP следует использовать символ «1», как цель сравнения – hd1
@ hd1 Вы правы, strncmp лучше. Ред. Благодаря! – dasblinkenlight
@PolyShell Пожалуйста, взгляните на редактирование. – dasblinkenlight