#c
#c
Вопрос:
У меня есть программа чтения файлов, она читает текстовый файл (csv) построчно…метод работает нормально..Я использую строковый маркер для каждого символа ‘;’… Мне нужно прервать первый цикл while, когда строка начинается с символа ‘a’…. Как я могу это сделать??
while(fgets(buffer, 1024, file) != NULL)
{
if (cnt>0) {
char *ch;
ch = strtok(buffer, ";");
while (ch != NULL) {
printf("%sn", ch);
ch = strtok(NULL, ";");
}
}
}
Спасибо
Maxime
Ответ №1:
Попробуйте это:
if(buffer[0] == 'a') break;
Комментарии:
1. 1, хотя
if(buffer[0] == 'a') break;
было бы менее подробным.
Ответ №2:
while(fgets(buffer, 1024, file) != NULL amp;amp; buffer[0] != 'a')
Ответ №3:
Я не уверен, что это то, о чем вы спрашиваете, хотите ли вы из обоих циклов while сделать это
while(fgets(buffer, 1024, file) != NULL)
{
bool okToExit = false;
if (cnt>0) {
char *ch;
ch = strtok(buffer, ";");
while (ch != NULL) {
printf("%sn", ch);
ch = strtok(NULL, ";");
if(buffer[0] == 'a'){
okToExit = true;
break;
}
}
}
if(okToExit) break;
}