当前位置 : 主页 > 网络编程 > 其它编程 >

c数组下标速度

来源:互联网 收集:自由互联 发布时间:2023-07-02
引言最近突然想到当数组array有2个元素,而访问其array[2]时会不会编译错误的问题,答案是编译的时候不报错,只有运行的时候才报错。感悟以下是我测试用的代码,程序可以正常编译
引言最近突然想到当数组array有2个元素,而访问其array[2]时会不会编译错误的问题,答案是编译的时候不报错,只有运行的时候才报错。感悟以下是我测试用的代码,程序可以正常编译 引言

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

感悟

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

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

上一篇:Hadoop之HDFS中HA的搭建
下一篇:没有了
网友评论