理解C语言中的语句
我正在学习一些C代码。其中有些有点难以理解。例如,以下作业的作用是什么:理解C语言中的语句,c,variables,types,variable-assignment,C,Variables,Types,Variable Assignment,我正在学习一些C代码。其中有些有点难以理解。例如,以下作业的作用是什么: MY_TYPE my_var[3]={0}; MY_TYPE是一种定点算术类型。我还没有遇到过括号中带有[]的变量,以及值周围带有{}的赋值 我想那太容易了。那么,定义的好处是什么 my_type my_var[3]={0}; 在这方面: my_type my_var[3]; 它是一个由3个元素组成的数组,所有元素都初始化为0。它创建了一个数组my\u var,类型为my\u type,大小为3,初始化为所有0(我怀
MY_TYPE my_var[3]={0};
MY_TYPE
是一种定点算术类型。我还没有遇到过括号中带有[]
的变量,以及值周围带有{}
的赋值
我想那太容易了。那么,定义的好处是什么
my_type my_var[3]={0};
在这方面:
my_type my_var[3];
它是一个由3个元素组成的数组,所有元素都初始化为0。它创建了一个数组
my\u var
,类型为my\u type
,大小为3,初始化为所有0(我怀疑my\u type
是某种整数类型)。请注意,只有一个初始化是必要的,其余的也要初始化
还要注意的是,如果全局声明数组而不是在块中声明数组,那么它将自动初始化,这
MY_TYPE MY_var[3]代码>就足够了。MY_-TYPE MY_-var[3]={0}代码>将数组初始化为:
my_var[0]=0;
my_var[1]=0;
my_var[2]=0 它是由3个元素组成的一维数组,初始化为0。从技术上讲,当您初始化数组的一个元素时,所有其他元素都会自动初始化为0
因此,有3个元素和3个索引:
my_var[0]=0;
my_var[1]=0;
my_var[2]=0;
My_TYPE
可以是int
、char
或任何其他数据类型。
我希望这有帮助
阅读更多关于数组的信息:my_var[3]
是一个类型为my_type
的变量,可以存储三个相同类型的值(称为数组)。
大括号{}
在这里用作初始值设定项my_var[3]={0}
将其第一个元素初始化为0
。其余元素自行初始化为零
MY_TYPE my_var[3];
在内存中为MY\u类型的数据保留三个空格
。鉴于
MY_TYPE my_var[3] = {0};
将所有这三个空格初始化为0
使用
my_type my_var[3]={0};
结束
第一条语句初始化数组。如果没有初始值设定项,您的数组将包含垃圾值(无论以前这些内存位置中发生了什么)。“如果没有初始值设定项,您的数组将包含垃圾值”-除非它是全局声明的。没有问题,当涉及到什么是默认初始化的,什么不是时,事情会变得有点棘手。我已经删除了我的答案。。。你说的是对的。。。有点细微差别我不知道,谢谢你纠正我。我想这将是一个很好的补充你的答案在这里。。。
my_type my_var[3];