清除char数组

时间:2016-09-26 14:01:45

标签: c

我想在c中清除一些char数组! 我想知道以这种方式清除4位(例如)是否更快:

for(int i =0; i<3; i++){
array[2][i][9][14][1] = 0;
array[2][i][8][14][1] = 0;
array[2][i][7][14][1] = 0;
}

或使用

清除整个数组
memset(&array[0], 0, sizeof(array));

数组由

初始化
unsigned char data[2][3][10][30][2];

1 个答案:

答案 0 :(得分:-2)

这取决于编译期间的代码优化。 每个编译器使用不同的优化。 (gcc / ms visual studio / etc ......)

我认为现在没有人在没有优化的情况下进行编译。

比较哪种方法更快的最佳方法是制作自己的基准。

尝试真正大数据的每种方法。在清洁前和每种方法清洁后记录timediff并使用最快。

我认为memset是最快的。试试吧。