2 u013845780 u013845780 于 2014.12.15 16:02 提问

C语言在函数中调用指数组的问题
 #include <stdio.h>

int i=5;

void output_array ( int array[] ){
    int a;
    for ( a=0; a<i; a++ ){
    printf ( "%i%s", &array[a], "\t" );    //warning: format specifies type 'int' but the argument has type 'int *' [-Wformat]
    }
}

int main(){
……
}

这是我写的一支小程序的一部分,但是这部分在编译器里面编译的时候提示了一个警告
由于我是初学者(自学)所以不太能理解这个警告的含义,希望有高人指点指点,谢谢。

1个回答

devmiao
devmiao   Ds   Rxr 2014.12.15 16:07
已采纳

printf ( "%i%s", array[a], "\t" );

如果你想输出的是数组的地址,而不是值,可以忽视这个警告。

u013845780
u013845780 回复devmiao: 谢谢指点 :)
接近 3 年之前 回复
devmiao
devmiao 回复u013845780: 不用加,就是我写的那样
接近 3 年之前 回复
u013845780
u013845780 如果我要输出数组的值应该如何修改?应该在array[a]前加上&吗?谢谢
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片