私は宣言したところでこのプログラムを行いました
long double *M;
次に、ファイルからデータを読み取ります
i=1;
M = (long double *) calloc ( i , sizeof(long double) );
while ( !feof( arq_matriz ) ){
fscanf ( arq_matriz , "%Lf" , (M+i-1));
i++;
M = (long double *) realloc ( M , i * sizeof(long double) );
}
fclose(arq_matriz);
だから、テストするために私はそれを画面に印刷します
for (i=0;i<=44;i++){
printf("\n %Lf",*(M+i));
}
すべて完璧。しかし、関数に渡したとき、またはデバッグしたときでさえ、*M=0 を取得しましたが、真実は *M = 0.25 および *(M+1) = '無効な浮動小数点数' です。すべてが画面に正しく印刷されているため、なぜこれが起こっているのかわかりません。ヒントはありますか?ありがとう!