C++ 二维数组如何初始化为0
发布网友
发布时间:2022-04-20 04:56
我来回答
共5个回答
热心网友
时间:2023-07-03 00:28
例如
int a[3][4];
a[0][0]='0'
这样写第一个元素初始化为0,其余也会初始化为0
还有一种就是
memset(要初始化的数组,初始化的值,要初始化的长度(字节));
热心网友
时间:2023-07-03 00:29
参考程序:
#include <iostream>
using namespace std;
int main()
{
int i,j;
int * * a=new int *[10];
for(i=0;i<10;i++)
a[i]=new int[8];
for(i=0;i<10;i++)
{
for(j=0;j<8;j++)
{
*(a[i]+j)=0;
cout<<*(a[i]+j)<<" ";
}
cout<<endl;
}
return 0;
}
C++ 也可以写:
int a[10][8];
简单的就是 :memset(a,0,sizeof(a));
热心网友
时间:2023-07-03 00:29
for(int l=0;l<10;l++)
{
A[l]=new int[8];
memset(A[l],0,sizeof(A[l])*8);
}
原理如楼上所述,不赘述~~
C++当然可以直接定义*数组了,
是C#不可以直接定义*数组。
热心网友
时间:2023-07-03 00:30
#include <iostream>
using namespace std;
int main()
{
int i,j;
int * * a=new int *[10];
for(i=0;i<10;i++)
a[i]=new int[8];
for(i=0;i<10;i++)
{
for(j=0;j<8;j++)
{
*(a[i]+j)=0;
cout<<*(a[i]+j)<<" ";
}
cout<<endl;
}
return 0;
}
参考程序
C++ 也可以写
int a[10][8];
简单的就是 :memset(a,0,sizeof(a));
热心网友
时间:2023-07-03 00:30
补充一下用memset函数要在开头加上 #include <string.h>
还有new了后面要delete