c++中数组下标越界输出什么_C语言数组的越界和溢出

c++中数组下标越界输出什么_C语言数组的越界和溢出引言最近突然想到当数组array有2个元素,而访问其array[2]时会不会编译错误的问题,答案是编译的时候不报错,只有运行的时候才报错。感悟以下是我测试用的代码,程序可以正常编译,且编译正确,只是在运行的时候出现程序崩溃。chararray[2]={‘2′,’3’};std::cout<<array[2]<<std::endl;//编译正常,运行的时候出现问题基于上述现象,说明程序在编译的时候没有进行下标越界的检查,当一个程序生成可执行文件的时候

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

引言

最近突然想到当数组array有2个元素,而访问其array[2]时会不会编译错误的问题,答案是编译的时候不报错,只有运行的时候才报错。

感悟

以下是我测试用的代码,程序可以正常编译,且编译正确,只是在运行的时候出现程序崩溃。

    char array[2] = { 
   '2','3'};
    std::cout<<array[2]<<std::endl;//编译正常,运行的时候出现问题

基于上述现象,说明程序在编译的时候没有进行下标越界的检查,当一个程序生成可执行文件的时候,总共经过四步:预处理,编译。汇编,链接。编译的时候进行代码的优化,语法分析,但未进行下标越界检查。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186743.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月2日 下午2:46
下一篇 2022年10月2日 下午2:46


相关推荐

  • ElasticSearch 海量数据查询

    ElasticSearch 海量数据查询elasticsearc 海量数据查询 使用 RestHighLeve 多条件精确查询 多条件模糊查询 批量查询 全量查询

    2026年3月19日
    3
  • webview长按复制_android长按菜单

    webview长按复制_android长按菜单TextView长按复制实现方法3种方法实践总结发布时间:2020-09-0514:32:58来源:51CTO阅读:1003作者:huangwenwenlili实现效果使用ContextMenu(1)注册菜单@OverridepublicvoidonCreate(BundlesavedInstanceState){mMoblieTextView=(TextView)findVie…

    2026年4月18日
    5
  • 高效率OCR场景文字图片合成工具发布!

    高效率OCR场景文字图片合成工具发布!OCR 光学字符识别 OPTICALCHARA 作为计算机视觉领域的经典问题之一它指对图像中的文字进行检测识别 包括文字检测 文字识别 并获取文本的结果 常见于拍照检查 文档识别 证照票据识别 车牌识别 自然场景下的文本定位识别等 相关技术在数字时代得到了广泛的应用 如下图是 OCR 识别结果 作为计算机视觉领域的 OCR 识别在训练的时候当然也会需要大量的图片数据来供神经网络的学习 一般需要数以千万计的图片才能训练一个文字识别系统 才能达到识别文字的目的 但是如果采用

    2026年3月17日
    1
  • JQuery delegate多次绑定的解决办法

    JQuery delegate多次绑定的解决办法我用 delegate 来控制分页 查询的时候会造成多次绑定 前一页 后一页触发 1 body delegate tableFoota not a btn click function 2 options page this attr page 3loadTmpl options 4

    2026年3月26日
    2
  • java.lang.OutOfMemoryError:GC overhead limit exceeded

    java.lang.OutOfMemoryError:GC overhead limit exceeded简单来说,java.lang.OutOfMemoryError:GCoverheadlimitexceeded发生的原因是,当前已经没有可用内存,经过多次GC之后仍然没能有效释放内存。

    2022年7月13日
    21
  • python反弹shell_反弹shell的各种姿势

    python反弹shell_反弹shell的各种姿势在渗透过程中 往往因为端口限制而无法直连目标机器 此时需要通过反弹 shell 来获取一个交互式 shell 以便继续深入 反弹 shell 是打开内网通道的第一步 也是权限提升过程中至关重要的一步 所有姿势整理自网络 假设 攻击者主机为 192 168 99 242 本地监听 1234 端口 如有特殊情况以下会备注说明 Linux 反弹 shell 姿势一 bash 反弹 bash i gt amp dev

    2026年3月18日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号