У меня есть текстовый файл, который выглядит следующим образом:STRCMP не возвращает 0
TEMP:88
TT:33
3d;3d:5
Я пытаюсь разобрать первую строку только, и убедитесь, что это действительно «TEMP: 88»
Это это то, что я пробовал:
FILE * file = fopen("test.txt","r");
if(file == NULL)
exit(0);
char buff[128];
while(fgets(buff,sizeof(buff),file) != NULL) {
if(strcmp(buff,"TEMP:88") == 0)
printf("TRUE");
else
printf("FALSE"); //prints false, regardless of newline character, use of memcopy or anything else
break;
}
Затем я попытался добавить символ новой строки «\ п» внутри STRCMP который давал те же результаты, и ает копию также дали тот же результат, любые идеи?
попробуйте напечатать содержание нагишом (лучше напечатать код ASCII) –
Он печатает правильную строку «ТЕМП: 88» – EDEDED
Параметр '\ n' * должен * быть включен ; учитывая это, сравнение работает так, как ожидалось здесь: https://ideone.com/WY3OHM –