Не могу сравнить токены

Я сделал код для токенизации данных в файле, используя C. Я хочу напечатать некоторые данные, если текущий токен равенSIOL, Моя проблемаstrcmp не сработает Можете ли вы обнаружить какие-либо ошибки? Вот код Спасибо за помощь

int main()
{
    FILE* fp;

    char  line[1024];
    char *val1;

    fp = fopen("sample1.txt" , "r");
    while (fgets(line, sizeof(line), fp) != NULL)
    {
        val1 = strtok(line, " ");
        if (strcmp(val1,"SIOL")==0)
        {
            printf("Sucess!");
            return 0;
        }
        else
        {
            while(val1)
            {
                printf("%s\n", val1);
                val1=strtok(NULL, " ");
            }
        }
    }
}

sample1.txt вот так:

HAHA
SIOL
Hello World!
SIOL
123 4 345 65 756 867 789797
Hello World

Ответы на вопрос(1)

Ваш ответ на вопрос