Инициализатор в цикле for выполняется только один раз.while
эквивалент
for (total1 = fsize(myfile);;) {
равен
total1 = fsize(myfile);
while (1) {
Вы упомянули добавление условия input = getch() != 'Q'
.
Обратите внимание, что присвоение (=
) имеет более низкий приоритет, чем сравнение (!=
), поэтому для присвоения getch()
input
и проверки того, что символ не является Q
, необходимо заключить в скобкивокруг задания:
total1 = fsize(myfile);
while ((input = getch()) != 'Q') {