我需要一个创建带有一些浮点的数组的函数。
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;
}
这会打印一些“随机”数字。
我对指针/数组感到困惑!
答案 0 :(得分:6)
您的指针/数组使用情况正常。
printf("%f", *(p + i));
使用%f
说明符打印双打。 %d
用于注册。
答案 1 :(得分:0)
我认为双打为%lf(长浮点数),普通浮点数为%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