0

いくつかの浮動小数点を持つ配列を作成する関数が必要です。

double * my_function( )
{
    static double arr[10] = {20, 21, 22, 23, 24, 25, 26, 27, 28, 29};

    return arr;
}


int main ()
{
    double *first_pos;
    int i;

    first_pos = my_function();
    for ( i = 0; i < 10; i++ )
    {
        printf( "%d", *(first_pos + i));
    }

return 0;
}

これにより、いくつかの「乱数」が出力されます。

ポインター/配列について混乱しています!

4

2 に答える 2

6

ポインタ/配列の使用は問題ありません。

printf("%f", *(p + i));

指定子を使用して double を出力し%fます。%dint用です。

于 2013-11-14T22:07:08.010 に答える
0

double の場合は %lf (long float)、通常の float の場合は %f だと思います

このような

  first_pos = my_function();
  for ( i = 0; i < 10; i++ ){
    printf( "%lf\n", *(first_pos + i));
  }

それが私に与える出力は

20.000000
21.000000
22.000000
23.000000
24.000000
25.000000
26.000000
27.000000
28.000000
29.000000
于 2016-08-25T20:34:31.390 に答える