Я пытался записать целое число в файл (режим открытия 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
Может кто-нибудь сказать, что я сделал не так?
спасибо!
обновление: в конечном итоге я хотел бы изменить запись на двоичный файл (я открою файл в режиме wb), будет ли разница в моей реализации?