当前位置: 首页 > news >正文

【C++】如何优雅地把二维数组初始化为0

2023年12月7日,周四上午


目录

  • 为什么要初始化二维数组
  • 不优雅的初始化方式:使用两个for循环
  • 优雅的初始化方式一:使用初始化列表
  • 优雅的初始化方式二:使用memset函数

为什么要初始化二维数组

如果不初始化二维数组,那么二维数组的值将会是不可预知的

#include<iostream>int main()
{int t[4][4];for(int i=0;i<4;i++)for(int j=0;j<4;j++)std::cout<<t[i][j]<<std::endl;
}

不优雅的初始化方式:使用两个for循环

#include<iostream>int main()
{int t[4][4];for(int i=0;i<4;i++)for(int j=0;j<4;j++)t[i][j]=0;for(int i=0;i<4;i++)for(int j=0;j<4;j++)std::cout<<t[i][j]<<std::endl;
}

优雅的初始化方式一:使用初始化列表

#include<iostream>int main()
{int t[4][4]={{0}};for(int i=0;i<4;i++)for(int j=0;j<4;j++)std::cout<<t[i][j]<<std::endl;
}

优雅的初始化方式二:使用memset函数

#include<iostream>
#include<cstring>
int main()
{int t[4][4];memset(t,0,sizeof(t));for(int i=0;i<4;i++)for(int j=0;j<4;j++)std::cout<<t[i][j]<<std::endl;
}

http://www.lryc.cn/news/255171.html

相关文章:

  • 8 个顶级的 PDF 转 Word 转换器
  • 计算机网络——习题
  • Linux 线程——信号量
  • 网页设计中增强现实的兴起
  • Android7.0新特性
  • visual studio 2022中使用vcpkg包管理器
  • C语言-链表_基础
  • Java第二十一章总结
  • 【keil备忘录】2. stm32 keil仿真时的时间测量功能
  • 图的存储(邻接矩阵,边集数组,邻接表,链式前向星)
  • Linux 基础知识整理(二)
  • 2024年值得关注的8个未来数据库
  • C++新经典模板与泛型编程:将trait类模板用作模板参数
  • BUUCTF-[GYCTF2020]FlaskApp flask爆破pin
  • web前端实现LED功能、液晶显示时间、数字
  • YOLOv8改进 | 2023 | DiverseBranchBlock多元分支模块(有效涨点)
  • Spring Boot 3 整合 Spring Cache 与 Redis 缓存实战
  • kubeadm 安装k8s1.28.x 底层走containerd 容器
  • “分割“安卓用户,对标iOS,鸿蒙崛起~
  • 【Vulnhub 靶场】【hacksudo: ProximaCentauri】【简单 - 中等】【20210608】
  • share pool的组成
  • 应用案例 | 基于三维视觉的汽车零件自动化拧紧解决方案
  • Redis server启动源码
  • C++基础 强制转换
  • 【python、opencv】opencv仿射变换原理及代码实现
  • mac本地部署stable-diffusion
  • dockers安装rabbitmq
  • 07、pytest指定要运行哪些用例
  • springboot集成cxf
  • 快速认识什么是:Kubernetes