Próbuję otworzyć taki plik w systemie Linux. Jeśli zakończy, nadpisze istniejący. To jest to czego chcę.Jak otworzyć plik, który nadpisuje istniejącą zawartość?
fout = open(out_file_name, O_WRONLY | O_CREAT, 644);
Jednak jeśli istniejący jest 1024 bajty, kiedy otworzę w powyższy sposób i napiszę 800 nowych bajtów. Nadal widzę 224 bajty na końcu poprzedniej zawartości.
Jak mogę sprawić, by było po prostu 800 bajtów, które napisałem?
Poszukujesz flagi 'O_TRUNC' na' open() '. –
Prawdopodobnie nie chcesz trybu 644. Być może chcesz trybu 0644. Ale zobacz komentarz Ciro na temat symbolicznych nazw S_xxUSR i tak dalej poniżej. –