繁体   English   中英

C类型定义的数组-初始值是多少?

[英]C typedef'd array - What's the initial value?

我知道数组的初始值在定义为静态时为0,否则为未定义,但是我不完全确定在对数组进行类型定义时是否也是如此。 我是这样认为的,但我想确认一下。

为了清楚起见,我的意思是这样的:

typedef float vector3[3];

int main (int argc, char* argv) {
    vector3 vec;
    static vector3 vec2;
}

vec变量是不确定的,不是吗? vec2呢? 应该全为0,对不对?

是的, vec的值是不确定的。 vec2的值将全部为零。

当定义或声明变量时,使用typedef对类型的行为没有影响。

typedef对代码的语义绝对没有影响。 这包括初始值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM