c语言中三维数组怎样初始化为0

如a[10][10][10]={0}可以全部初始化为0吗?... 如a[10][10][10]={0}可以全部初始化为0吗? 展开
 我来答
旷野行风
2015-09-10 · TA获得超过366个赞
知道小有建树答主
回答量:302
采纳率:33%
帮助的人:234万
展开全部
  • memset(void*p,int ch,size_t n)函数功能:以指针p指向的内存空间为起始,将其后n个字节的空间全部赋值为ch.该函数头文件为<string.h>或<memory.h>


  • 使用该函数初始化数组为0

#include<stdio.h>
#include<string.h>
void main()
{
    int a[2][3][4];
    a[1][2][3]=1;
    memset(a,0x00,sizeof(a));
    /*测试是否初始化为0*/
    printf("a[1][2][3]=%d\n",a[1][2][3]);
}
  • 运行结果


匿名用户
2008-04-16
展开全部
可以,当初始化器中的值少于元素数量时,剩余部分元素值都被初始化为0
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
besthelp
2008-04-16 · TA获得超过1057个赞
知道小有建树答主
回答量:376
采纳率:100%
帮助的人:390万
展开全部
数组可以初始化
用一个简单的测试程序就可以明白了
#include <stdio.h>
void main()
{
int a[10][10][10]={0};
for(int i=0;i<10;i++)
for(int j=0;j<10;j++)
for(int k=0;k<10;k++)
printf("a[%d][%d][%d]:%d\n",i,j,k,a[i][j][k]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leeshk
2008-04-16 · 超过10用户采纳过TA的回答
知道答主
回答量:54
采纳率:0%
帮助的人:0
展开全部
调试一下不就知道了。
我试过了,可以的。
从理论上讲,a[10][10][10]={x}将x赋值给a[0][0][0](此处x=0),其他元素电脑将随着这个语句被赋值0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
天——天1a7
2008-04-16 · 超过10用户采纳过TA的回答
知道答主
回答量:40
采纳率:50%
帮助的人:13.3万
展开全部
#include "Windows.h"
void main()
{
int a[3][10][10];
ZeroMemory(a,sizeof(int)*300);
}
我在VS2005下运行的
或者在定义的时候进行,如int a[3][10][10] = {0};即可
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式