В манах пишут что fseek может выходить за пределы файла, это типа нормально. Но мне бы таки очень хотелось понять что файл кончился - файл мог до конца не записаться.
Как это сделать Ъ? Попытаться прочитать маленький кусочек? Заранее определить размер файла через fstat? Какие еще варианты?