有两种方法可以将整数/浮点数数组归零:
memset(array, 0, sizeof(int)*arraysize);
或:for (int i=0; i <arraysize; ++i)
array[i]=0;
显然,对于大的arraysize
,memset
更快。然而,在什么情况下,memset
的开销实际上比for循环的开销更大?例如,对于大小为5的数组-哪种方法最好?第一种、第二种,或者展开循环版本:
array[0] = 0;
array[1] = 0;
array[2] = 0;
array[3] = 0;
array[4] = 0;
int array[5] = {0};
。 - Hosam Aly