tyf1218405122 发表于 2022-5-29 20:38:38

关于数组正确初始化的语句形式

int a={ };

int a={10*1};

我想知道这两个为啥不对?

jhq999 发表于 2022-5-29 20:55:51

本帖最后由 jhq999 于 2022-5-29 20:58 编辑

vs里面没问题

int a={ };///相当于int a={0};可能c里面的声明规则不允许
int a={10*1};////a=10,其他=0,这个可能在c里面数值初始化不允许运算

tyf1218405122 发表于 2022-5-29 20:55:58

是c不是c++.

jhq999 发表于 2022-5-29 20:59:08

tyf1218405122 发表于 2022-5-29 20:55
是c不是c++.

小甲鱼的臀部

tyf1218405122 发表于 2022-5-29 20:59:22

jhq999 发表于 2022-5-29 20:55
vs里面没问题

我觉得没问题, 只是书上遇到的题目说不可以,但没有给解析.

傻眼貓咪 发表于 2022-5-29 21:00:01

两个都不对?{:5_94:}

jhq999 发表于 2022-5-29 21:05:53

tyf1218405122 发表于 2022-5-29 20:59
我觉得没问题, 只是书上遇到的题目说不可以,但没有给解析.

各种编译器的规定很多不一样,还有各种版本的标准也不一样,既然用了工具就遵守它的规则,就是你对它骂娘它也听不懂

cjgank 发表于 2022-5-31 13:09:09

这两种初始化语句好像都没有遇到过
一般都是直接:int a = {0};

ExiaGN001 发表于 2022-6-24 20:10:41

jhq999 发表于 2022-5-29 20:59
小甲鱼的臀部

是”烂规定“的意思吗

ExiaGN001 发表于 2022-6-24 20:12:01

C:
都不行
C++
都可以
1效果是a数组全0
2效果是a是10,其余是0
页: [1]
查看完整版本: 关于数组正确初始化的语句形式