Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата VictorSh:
То, есть FOR /F заранее знает, сколько будет шагов цикла? »
Не знает.
Цитата VictorSh:
а потом натыкается на нуль-символ и заканчивает цикл. »
Читает до конца файла, как уже написал amel27. Если встретит «\0x0» — верно, закончит чтение преждевременно (скорее всего потому, что командный процессор пользует C-шные функции и строки).
Цитата amel27:
…вплоть до EOF
Код: Выделить весь код
while((c=_fgetchar()) != EOF)
Я бы уточнил (на случай, если кто неправильно поймёт контекст), что именно до реального конца файла, «for /f» не рассматривает символ «\0x1a» в качестве конца файла (т.е., EOF, в примере выше, != \0x1a). И, скорее, что-то наподобие fgets(), нежели _fgetchar().

Отправлено: 04:57, 20-04-2011 | #8