int a[10]={};是正确的吗?

int a[10]={};是正确的吗?

语法上虽然是正确的,但是我们一般不这么写,因为可读性差,有些人不知道,可能还会以为是语法错误,所以一般写成如下:

int a[10]={ 0 };

将数组a中的所有元素都赋初值0.

当然,如果你写成这样int a[10]={ 1 };

他仅仅只是将数组的第一个元素赋值1而已,其它数值还是0.这是C/C++的一种机制问题,无需深究。

int a[10]={};是正确的,因为编译系统会给数组赋默认值的,都是0

从语法上来说是正确的。

可以的 默认每个元素为0

#include<stdio.h>;
int main()
{
    int a[10]={};
    int i;
    for(i=0;i<10;i++){
        printf("%d ",a[i]);
    }
}

在c语言中这种写法是正常的,很多时间有疑惑可以自己写代码测试一下。这样容易解决自己的疑问。

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632