Я пытаюсь записать целое число в файл (открытый режим - w). fprintf написал это правильно, но fwrite написал тарабарщину:
int length;
char * word = "word";
counter = strlen(word);
fwrite(&length, sizeof(int), 1, file);
fwrite(word, sizeof(char), length, file);
и результат в файле:
слово
но если я использую fprintf вместо этого, вот так:
int length;
char * word = "word";
counter = strlen(firstWord);
fprintf(file, "%d", counter);
fwrite(word, sizeof(char), length, file);
Я получаю этот результат в файле:
4word
может кто-нибудь сказать, что я сделал не так? спасибо!
update: я бы в конце концов хотел бы изменить запись на двоичный (я открою файл в режиме wb), будет ли разница в моей реализации?