C++静态数组和C语言静态数组的区别( array,int a[])

embedded/2024/10/22 12:38:01/

目录

一、区别

1、越界读,检查不出来

2、越界写,抽查,可能检查不出来,有局限性

二、array缺点



一、区别


C语言的静态数组int a[];
静态数组的越界检查不稳定的:


1、越界读,检查不出来


2、越界写,抽查,可能检查不出来,有局限性

C++的静态数组array:
任意读写越界都可以检查出来
如何实现;多加了一个assert检查

二、array缺点


a、静态数组在栈上,空间有限,一般32位就是有8M(不能申请太大的空间)
b、鸡肋,不能初始化
c、在有vector的情况下,array几乎没有卵用


http://www.ppmy.cn/embedded/33637.html

相关文章

二叉搜索树

一、概念 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树: 若它的左子树不为空,则左子树上所有节点的值都小于根节点的值 若它的右子树不为空,则右子树上所有节点的值都大于根节点的值 它的左右子树也分…

工作问题记录React(持续更新中)

一、backdrop-filter:blur(20px); 毛玻璃效果,在安卓机上有兼容问题,添加兼容前缀也无效; 解决方案:让设计师调整渐变,不要使用该属性! 复制代码 background: radial-gradient(33% 33% at 100% 5%, #e9e5e5 0%, rgba…

大数据BI可视化(Echarts组件)项目开发-熟悉koa2后端开发6.0

koa2简介 1.基于Node.js平台的web开发框架 2.由Express原班人马打造 Express,koa,koa2 框架名作用异步处理Expressweb框架回调函数koaweb框架Generatoryieldkoa2web框架async/await 3.环境依赖Node.js V7.6.0以上 koa2特点 1.支持async/await 2.…

孩子如何学好python

学习基础知识:孩子可以从学习Python的基础知识开始,包括变量、数据类型、循环、条件语句等。可以通过在线教程、书籍或者视频课程进行学习。 实践编程:让孩子通过实际编写代码来巩固所学知识,可以让他们完成一些简单的编程项目或…

每日OJ题_DFS爆搜深搜回溯剪枝⑧_力扣980. 不同路径 III

目录 力扣980. 不同路径 III 解析代码 力扣980. 不同路径 III 980. 不同路径 III 难度 困难 在二维网格 grid 上,有 4 种类型的方格: 1 表示起始方格。且只有一个起始方格。2 表示结束方格,且只有一个结束方格。0 表示我们可以走过的空…

leetCode71. 简化路径

leetCode71. 简化路径 代码 // 化简:就是把所有的., .. // 去掉弄成进入想进的目录,且结果最后不能有/ // 实现思路: 本质上是一个栈,就是进栈出栈的一个模拟实现 class Solution { public:string simplifyPath(string path) {//…

基于 Dockerfile 部署 LNMP 架构

目录 前言 1、任务要求 2、Nginx 镜像创建 2.1 建立工作目录并上传相关安装包 2.2 编写 Nginx Dockerfile 脚本 2.3 准备 nginx.conf 配置文件 2.4 生成镜像 2.5 创建 Nginx 镜像的容器 2.6 验证nginx 3、Mysql 镜像创建 3.1 建立工作目录并上传相关安装包 3.2 编写…

SQL 基础 | JOIN 操作介绍

在SQL中,JOIN是一种强大的功能,用于将两个或多个表中的行结合起来,基于相关的列之间的关系。 JOIN操作通常用在SELECT语句中,以便从多个表中检索数据。 以下是几种基本的JOIN类型以及它们的用法: INNER JOIN&#xff1…