如何给多维数组赋初值

简介: 如何给多维数组赋初值

如何给多维数组赋初值

问题提出:

十年前有人写如下代码:

char szData[6][10];
//...
memset(szData,0,6*10);

五年前,有人改了数组定义:

//char szData[6][10];
char szData[6][100];

前几天,我花了两天修改了一个Bug,错误的根源就在这。

问题分析:

由于数组的大小变小,使得只初始化数组的部分空间。

解决方法:

用sizeof函数取得数组空间。

具体代码如下:

class CData
{
 public:
  int x ;  
};
CTest33View::CTest33View()
{
 char szData[6][100];
 int iSize = sizeof(szData);
 memset(szData,0,iSize);
 CString strMess ;
 strMess.Format("/nchar占用%d个字节 char szData[6][100]占用%d个字节/n",sizeof(char), sizeof(szData));
 TRACE(strMess);
 CData data[100] ;
 iSize = sizeof(data);
 memset(data,0,iSize);
 strMess.Format("CData占用%d个字节 CData data[100]占用%d个字节/n",sizeof(CData), sizeof(data));
 TRACE(strMess);
}

输出区(OutPut)内容:

char占用1个字节 char szData[6][100]占用600个字节

CData占用4个字节 CData data[100]占用400个字节  


相关文章
|
API 计算机视觉
【OpenCV】形态学滤波(2):开运算、形态学梯度、顶帽、黑帽
【OpenCV】形态学滤波(2):开运算、形态学梯度、顶帽、黑帽
359 1
|
安全 Java 开发者
构建高效微服务架构:后端开发的新范式Java中的多线程并发编程实践
【4月更文挑战第29天】在数字化转型的浪潮中,微服务架构已成为软件开发的一大趋势。它通过解耦复杂系统、提升可伸缩性和促进敏捷开发来满足现代企业不断变化的业务需求。本文将深入探讨微服务的核心概念、设计原则以及如何利用最新的后端技术栈构建和部署高效的微服务架构。我们将分析微服务带来的挑战,包括服务治理、数据一致性和网络延迟问题,并讨论相应的解决方案。通过实际案例分析和最佳实践的分享,旨在为后端开发者提供一套实施微服务的全面指导。 【4月更文挑战第29天】在现代软件开发中,多线程技术是提高程序性能和响应能力的重要手段。本文通过介绍Java语言的多线程机制,探讨了如何有效地实现线程同步和通信,以及如
|
Linux
Linux系统无法启动问题及解决方案(/etc/fstab文件损坏,GRUB文件损坏)
Linux系统无法启动问题及解决方案(/etc/fstab文件损坏,GRUB文件损坏)
1348 0
|
存储 编译器 C语言
C语言第九课------------------数组----------------C中之将
C语言第九课------------------数组----------------C中之将
149 0
|
JavaScript 前端开发
【三十天精通Vue 3】第二十六天 Vue3 与 TypeScript 最佳实践
【三十天精通Vue 3】第二十六天 Vue3 与 TypeScript 最佳实践
493 0
|
运维 架构师 Cloud Native
深度|为什么一定要从DevOps走向BizDevOps?
为更好地厘清波涛汹涌的数字化转型浪潮下软件产业所面对的机遇与挑战,6月29日,阿里云云效与阿里云开发者评测局栏目,联合特邀了InfoQ极客帮副总裁付晓岩、南京大学软件工程学院教授张贺、Thoughtworks全球数字化转型负责人肖然、国内精益产品开发最早实践者何勉(阿里云云效解决方案负责人),阿里云资深技术专家陈鑫(云效平台负责人)以及阿里云高级产品专家张裕(云效平台产品架构师)共6位领军人物,一起围绕数字化转型浪潮下的技术变局进行了深度的研讨。
深度|为什么一定要从DevOps走向BizDevOps?
|
存储 人工智能 编译器
【 C语言 】 数组(详细讲解+代码展示)
在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式组织起来——称为数组。数组也是我们在学习C语言的基础之一,那对于数组的知识你掌握多少呢?那些细枝末节你会不会啊?看完这篇文章,你将掌握数组。
877 0
【 C语言 】  数组(详细讲解+代码展示)
|
弹性计算 Ubuntu 物联网
我的ECS使用体验报告
学生用户初次使用阿里云服务器的体验报告