Fscanf връща ли EOF?
Fscanf връща ли EOF?

Видео: Fscanf връща ли EOF?

Видео: Fscanf връща ли EOF?
Видео: Introduction to using fscanf( ) to read text 2024, Ноември
Anonim

fscanf връща EOF ако край на файла (или грешка при въвеждане) се появява преди да бъдат съхранени каквито и да е стойности. Ако стойностите се съхраняват, то се завръща броя на съхраняваните артикули; т.е. колко пъти дадена стойност е присвоена с едно от fscanf указатели на аргументи. EOF е се завърна ако възникне грешка, преди да бъдат съпоставени елементи.

Оттук нататък какво връща Fscanf?

В fscanf () функция се завръща броя на полетата, които успешно е преобразувано и присвоено. В връщане стойност прави не включва полета, които fscanf () функцията е прочетена, но не е присвоена. В връщане стойността е EOF, ако възникне грешка при въвеждане преди всяко преобразуване, или броят на присвоените входни елементи, ако е успешно.

По същия начин Fscanf чете ли ред по ред? Проблемът е че вашият fscanf ще никога Прочети новият ред в края на първия линия . Така че когато е е се обади втори път, то ще неуспешен (връща 0, а не EOF) и Прочети нищо, оставяйки буфера непроменен.

По подобен начин може да попитате какво прави Fscanf в C?

В fscanf () функцията се използва за четене на форматиран вход от файла. Работи точно като функцията scanf(), но вместо да чете данни от стандартния вход, чете данните от файла.

Какво е край на файла в C?

EOF означава край на файла . Това е знак, че край на а файл е достигнат и че вече няма да има данни. В Linux системи и OS X символът за въвеждане, за да предизвика EOF, е CTRL+D. За Windows това е CTRL+Z.

Препоръчано: