putw()
、、、fprintf()
およびを含むCで使用可能なファイル処理関数のいずれかを使用して、整数値13をファイルに書き込むことができませんfwrite()
。
#include <stdio.h>
#include <conio.h>
void main()
{
int i;
int arr[]={10, 11, 12, 13, 14, 15};
FILE *fp;
if (fp = fopen("test", "w")) {
for(i=0; i<6; i++) {
putw(arr[i], fp);
}
}
fclose(fp);
fp = fopen("test", "r");
while ((i=getw(fp))!= EOF) {
printf("%d, ",i);
}
fclose(fp);
getch();
}
出力を与える
10, 11, 12, 3584, 3840,
および変更された配列
int arr[]={13, 11, 12, 13, 14, 15};
出力を与える
2816, 3072, 0, 14, 15,
値13に遭遇した後、出力が期待どおりではないことがわかります。誰かがこの問題で私を助けることができますか?