Следующий код работает нормально, за исключением того, что мой выходной файл не содержит целое число 10, а вместо этого символы ^ @ ^ @ ^ @, когда я открываю его в VIM.Если я открою его в textedit (на Mac), файл окажется пустым.
Кто-нибудь знает, где я здесь не так?
#include <stdio.h>
#include <stdlib.h>
#define MAX_LINE 256
#define MAX_NAME 30
int main() {
FILE *fp;
char fname[MAX_NAME] = "test1.dat";
int x =10;
int num= 0;
if( (fp =fopen(fname, "w")) == NULL) {
printf("\n fopen failed - could not open file : %s\n", fname);
exit(EXIT_SUCCESS);
}
num= fwrite(&x, sizeof(int), 1, fp);
printf("\n Total number of bytes written to the file = %d\n", num);
fclose(fp);
return(EXIT_SUCCESS);
}