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

C++可以使用负数作为下标索引

今天碰到一个题目,写bfs写炸了,发现好像数组越界,但是却没有报错,而是被边界检查拦截了

导致死循环了???

ps:所以写边界问题,首要的就是对边界进行检查,不检查越界之后会发生什么结果,你也不清楚!!!

下面是一个示例,展示如何使用负下标

#include<iostream>
#include<map> 
#include<vector>
#include<algorithm>
using namespace std;
#define int long long int
const int maxLine=500+10;
bool checkMap[maxLine][maxLine];
int arr[maxLine]; signed main(){for(int i=0;i<maxLine;i++){arr[i]=i;}int *p=arr+maxLine/2;cout<<p[-1];return 0;
} 

输出答案是254(即255的前一位)

你发现了吗?指针下标索引,实质上就是对地址的偏移索引,使用下标就是使用对应的地址

地址可以怎么玩,下标也可以怎么玩!

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

相关文章:

  • react+canvas实现横跨整个页面的动态的波浪线(贝塞尔曲线)
  • 峰回网关数采PLC
  • Vue+element el-date-picker 时间日期选择器设置默认值,选择框不显示问题(已解决)
  • 数据挖掘题目:根据规则模板和信息表找出R中的所有强关联规则,基于信息增益、利用判定树进行归纳分类,计算信息熵的代码
  • Reshape.XL 1.2 for Excel插件 Crack
  • 开发知识点-PHP从小白到拍簧片
  • 飞书开发学习笔记(二)-云文档简单开发练习
  • 设计模式——命令模式(Command Pattern)+ Spring相关源码
  • [开源]企业级在线办公系统,基于实时音视频完成在线视频会议功能
  • Scala语言用Selenium库写一个爬虫模版
  • ZZ038 物联网应用与服务赛题第I套
  • ClickHouse 学习之基础入门(一)
  • HttpClient基本使用
  • 力扣:150. 逆波兰表达式求值(Python3)
  • Tomcat运行日志乱码问题/项目用tomcat启动时窗口日志乱码
  • Leetcode—199.二叉树的右视图【中等】
  • 微信小程序如何跳转到外部小程序
  • ElasticSearch集群环境搭建
  • [架构之路-250/创业之路-81]:目标系统 - 纵向分层 - 企业信息化的呈现形态:常见企业信息化软件系统 - 企业内的数据与数据库
  • delaunay和voronoi图 人脸三角剖分
  • MySQL数据库之表的增删查改
  • (论文阅读11/100)Fast R-CNN
  • Git 标签(Tag)实战:打标签和删除标签的步骤指南
  • React 底层 Fiber 架构 简单理解
  • 使用 Python 进行自然语言处理第 4 部分:文本表示
  • 【LLM】大语言模型高效微调方案Lora||直击底层逻辑
  • Qt for Android代码中输出日志
  • 力扣刷题-二叉树-二叉树的递归遍历
  • VX-3R APRS发射试验
  • JAVA毕业设计109—基于Java+Springboot+Vue的宿舍管理系统(源码+数据库)