c ++二维数组赋值
时间: 2023-12-12 18:35:08 浏览: 80
二维数组的赋值可以使用循环嵌套来实现,也可以使用指针的方式来实现。以下是两种方法的示例代码:
1.循环嵌套
```c++
int a[3][4];
for(int i=0;i<3;i++){
for(int j=0;j<4;j++){
a[i][j] = i+j;
}
}
```
2.指针
```c++
int a[3][4];
int *p = &a[0][0];
for(int i=0;i<3;i++){
for(int j=0;j<4;j++){
*(p+i*4+j) = i+j;
}
}
```
相关问题
c+动态分配二维数组
以下是C++动态分配二维数组的示例代码:
```cpp
// 假设数组的第一维长度为m,第二维长度为n
int** p = new int*[m];
for (int i = 0; i < m; i++) {
p[i] = new int[n];
}
// 释放内存
for (int i = 0; i < m; i++) {
delete[] p[i];
}
delete[] p;
```
c++创建动态二维数组
在C++中,我们可以使用指针和new运算符来创建动态二维数组。下面是一个示例代码:
```c++
int rows = 3;
int cols = 4;
// 创建一个指向int指针的指针
int **arr = new int*[rows];
// 为每一行分配内存
for(int i = 0; i < rows; i++) {
arr[i] = new int[cols];
}
// 给数组赋值
for(int i = 0; i < rows; i++) {
for(int j = 0; j < cols; j++) {
arr[i][j] = i * cols + j;
}
}
// 访问数组元素
for(int i = 0; i < rows; i++) {
for(int j = 0; j < cols; j++) {
cout << arr[i][j] << " ";
}
cout << endl;
}
// 释放内存
for(int i = 0; i < rows; i++) {
delete[] arr[i];
}
delete[] arr;
```
在这个例子中,我们使用指向int指针的指针来创建一个二维数组。首先,我们使用new运算符为指针数组分配内存。然后,我们使用for循环为每一行分配内存。接下来,我们使用两个for循环来给数组赋值和访问数组元素。最后,我们使用for循环释放内存。