我無法使用C上提供的任何文件處理函數(包括putw()
,fprintf()
和fwrite()
)將整數值13寫入文件。C文件處理 - 整數值13無法寫入文件
#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。 任何人都可以幫我解決這個問題嗎?
在Windows上工作我拿它? – Mike
是的,Windows XP SP2,現在我知道爲什麼會發生這種情況。 –