リダイレクトによる入力を使用しています。文字列から整数に数値を格納しようとしています。
最初の数字は 1989 ですが、格納されるのは '1' だけです。strtol を間違って使用していますか?
テーブルは構造体の配列です
value は整数の配列です。
//(*row, i, j) = 0
while((c = fgetc(stdin)) != EOF)
{
if (c != ' ' && c != '\n')
{
str[i] = c;
i++;
}
else if (c == ' ')
{
str[i] = '\0';
i = 0;
table[*row].value[j] = strtol(str, NULL, strlen(str));
このコードは機能し、1989 年に読み取った後に else if に入ります...しかし、何らかの理由で strtol は「1989」ではなく「1」のみを格納しています。