зацикливание на каждой строке файла в C - PullRequest
2 голосов
/ 15 апреля 2011

Мне интересно, как вы можете перебрать каждую строку файла, вот код, который у меня есть:

FILE *todoFile;
todoFile = fopen("./todo.txt", "r");

if (todoFile != NULL) {

} else {
    printf("ERROR");
}

Ответы [ 2 ]

8 голосов
/ 15 апреля 2011

Идиоматический способ читать файл построчно, пока он не заканчивается, -

    /* assume line is a char array */
    while (fgets(line, sizeof line, handle)) {
        size_t len = strlen(line);
        if (len && (line[len - 1] != '\n')) {
            /* incomplete line */
        }
        /* possibly remove trailing newline ... and */
        /* deal with line */
    }
0 голосов
/ 15 апреля 2011

fgets (), если это обычное домашнее задание на языке C. В противном случае используйте библиотеку, такую ​​как GLib, с функциями более высокого уровня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...