ファイルからデータを読み取り、これまでのすべての列と行 (データ ファイル) を取得しています。今、値を 1 つずつ読み取り、値を 2D 配列 (double) に格納しようとしています。getc を使用して値を char として取得しますが、atoi または atof を使用して値を char から double に変換しようとすると、奇妙な値が得られます。
double ther[j][number];
char c;
int tim=0,nther=0;
FILE *fp3 = fopen("data.txt", "r");
c = getc(fp3) ;
while (c!= EOF)
{
ther[tim][nther]=atoi(&c);
printf("%lf", ther[tim][nther]);
nther++;
c = getc(fp3);
if(nther==number)
{
tim++;
nther=0;
}
tim=0;
}
fclose(fp3);
何か提案はありますか?… (私は探し続けます)。申し訳ありませんが、ファイル data.txt があり、このファイルには行と数字の列があります:
1 2 3 4 5
6 7 8 9 10
したがって、データを 2D 配列に格納する必要があります。回答のおかげで、文字列を使用し、すべての値を分割して、すべての値を格納するなどのアイデアがあります。1 行目は string-> array[0][0]、array[0][1] などです。次に、他の行に移動して同じことを行います。
今までいくつかの数値を取得しましたが、data.txt に格納されているものはありません。