memset给二维数组赋值
时间: 2023-10-16 14:06:36 浏览: 123
C实现不定长数组的示例
你可以使用 `memset` 函数给二维数组赋值。`memset` 函数可以用来将一个内存区域的字节设置为特定的值。
要给二维数组赋值,你需要先计算出数组的总字节数,然后使用 `memset` 函数将数组的每个字节设置为特定的值。
下面是一个示例代码,演示如何使用 `memset` 函数给二维数组赋值为0:
```c
#include <stdio.h>
#include <string.h>
#define ROWS 3
#define COLS 4
int main() {
int arr[ROWS][COLS];
memset(arr, 0, sizeof(arr));
// 打印二维数组的值
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
在上面的代码中,我们首先定义了一个 `3x4` 的二维数组 `arr`。然后使用 `memset` 函数将 `arr` 数组的所有字节设置为0,其中第一个参数是要设置的数组,第二个参数是要设置的值(这里是0),第三个参数是要设置的字节数(使用 `sizeof(arr)` 计算得到)。
最后,我们使用嵌套循环打印出二维数组的值,可以看到所有元素都被成功设置为0。
注意:`memset` 函数是按字节进行操作的,所以只能对字节数组进行初始化,不能对其他类型的数组进行初始化,否则可能会导致类型不匹配的问题。
阅读全文