c语言数组定义a[10],直接printf('%d",a)为什么答案是负数?

发布网友

我来回答

5个回答

热心网友

a是存放定义数组的首地址,输出的数据是16位二进制数,无所谓正负,但把它表示成十进制带符号数(d)时,可能是负数。

热心网友

直接printf('%d",a)有可能输出的是数组a的地址或随机数
如果你的数组没有初始化而且a数组是局部变量,就会输出随机数。应该初始化后在调用里面的值。printf('%d",*a)

热心网友

a是一个地址常量 。。打印地址用%p格式说明符

热心网友

贴的不全?把代码全部贴出来 不然怎么帮你

热心网友

数组a是什么类型的数组?你给它初始化了吗?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com