首页 > 代码库 > C++数组初始化的问题

C++数组初始化的问题

有时候为了省事觉得这样就可以初始化一个数组

int main(int argc,char ** argv)
{
	
	int arrays[11]={10};
	
}

但实际结果是除了arrays[0]=10外,其余都为零,看看汇编码。


 mov     [ebp+var_30], 0Ah 仅仅将第一个元素初始化为了10,


很容易想当然的认为花括号中的唯一的那个值是赋给数组的每一个元素的,其实应该养成好的初始化习惯,用memset或者循环去正确的初始化才是正道。