Что такое ключевое слово FILE в C?

Я начал изучать C в качестве хобби и уже довольно долгое время вслепую использовал FILE в качестве объявления для указателей файлов, и мне было интересно. Это ключевое слово или специальный тип данных для C для обработки файлов? Содержит ли он поток к файлу внутри и другие данные? Почему он определяется как указатель?

Пример, чтобы показать, что я имею в виду, чтобы сделать его немного более понятным:

FILE* fp; //<-- this
fp = fopen("datum.txt", "r");

while(!feof(fp)) {
   // etc.
}
24
задан RicoRico 7 April 2018 в 16:20
поделиться