在C语言中,我正在创建一个数组(2维),其中所有元素都是零
我这样做的方式如下:
int a[5][5],i,j; //a is the required array
for(i=0;i<5;i++)
for(j=0;j<5;j++)
a[i][j]=0;
Run Code Online (Sandbox Code Playgroud)
我也知道其他一些方式:
int a[5][5]={0};
Run Code Online (Sandbox Code Playgroud)
两者都相同或有什么区别?
什么应该是首选?
谢谢 !
两种方式都有相同的效果,但第二种方法通常会更快,因为它允许编译器优化和矢量化该代码.
另一种被广泛接受的方式(也是可以优化的)是
memset(a, 0, sizeof(a));
Run Code Online (Sandbox Code Playgroud)