越界死循环
算法内容
本文件是 C/C++ 数组越界行为的实验代码。
代码定义长度为 5 的数组 a,但循环写入 a[0] 到 a[30],明显越界。越界写会破坏栈上的其他局部变量或控制信息,因此可能出现循环条件异常、输出异常、崩溃等未定义行为。这个文件的学习重点是:C/C++ 不会自动检查原生数组边界,越界访问不是稳定可依赖的行为,调试时可以借助 AddressSanitizer 等工具定位。
算法实现
1 |
|
本文件是 C/C++ 数组越界行为的实验代码。
代码定义长度为 5 的数组 a,但循环写入 a[0] 到 a[30],明显越界。越界写会破坏栈上的其他局部变量或控制信息,因此可能出现循环条件异常、输出异常、崩溃等未定义行为。这个文件的学习重点是:C/C++ 不会自动检查原生数组边界,越界访问不是稳定可依赖的行为,调试时可以借助 AddressSanitizer 等工具定位。
1 |
|