Dlaczego tak
Pierwsze wywołanie zapisuje do pliku tekst 5, nadpisując ewentualną poprzednią zawartość. Następnie odczytana wartość zamieniana jest na liczbę 5 i do pliku trafia 6 — ale z flagą FILE_APPEND, która dopisuje dane na końcu zamiast nadpisywać. W pliku jest więc tekst 56. Wynik 6 byłby prawdziwy bez flagi FILE_APPEND.