以下のC言語ソースコードでファイル(下記参照)から値を読み込む場合、int型で読み込む場合はエラーを吐かないんですが、unsigned char型にしたらファイルクローズする際にエラーが起こります。
どうしてでしょうか?
#include <stdio.h>
int main(void)
{
int i; // roop用
char buff[256]; // buffer
int a[10]; // ファイルの値格納先
unsigned char b[10]; // ファイルの値格納先
FILE *fp;
fp = fopen("t.txt", "r");
for(i = 0; i < 10; i++){
fgets(buff, 256, fp);
sscanf(buff, "%d", &b);
printf("%d\n", b); //
}
fclose(fp);// 値格納先がunsigned char型の場合、ここでエラー
return 0;
}
<t.txt>
0
1
2
3
4
5
6
7
8
9
