這裏是我的代碼沒有表現:fprintf中(FP, 「%C」,10)如預期
#include <stdio.h>
#include <stdlib.h>
main(){
FILE* fp = fopen("img.ppm","w");
fprintf(fp,"%c", 10);
fclose(fp);
return 0;
}
出於某種原因,我無法揭開,這寫2個字節的文件:「0X0D的0x0A 「而我期望的行爲是因爲它只寫了十進制數爲10的」0x0A「。它似乎可以正常工作,包括0到255之間的每個其他值,它只是向文件寫入一個字節。我完全失去了,有什麼幫助?
嘗試'FILE * fp = fopen(「img.ppm」,「wb」);' – BLUEPIXY
如果您想要將單個'\ xA'字節寫入二進制文件,則使用''wb''是解決方案。如果你想創建一個文本文件,那麼這個雙字符序列正是你想要的。 –