c++ - 在 C/C++ 中防止缓冲区溢出

标签 c++ c buffer-overflow

很多时候我遇到缓冲区溢出问题。

int y[10][10][10];

...

y[0][15][3] = 8;

我怎样才能避免这个问题? 有什么好的工具可以帮助我吗?

最佳答案

不要使用原始的 C 风格数组。相反,使用 C++ 容器类,例如 std::vector,它们能够检查无效访问并在它们发生时引发异常。

此外,您所描述的并不是真正的缓冲区溢出。

关于c++ - 在 C/C++ 中防止缓冲区溢出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1083898/

相关文章:

linux - CycloneV 的嵌入式 linux 上的数十个 "external abort on non-linefetch (0x1018)"内核消息

c++ - 复杂性..大O

C++ WINAPI 通过 GetProcAddress 调用导出函数

与插入迭代器和重载运算符相关的 C++ STL 问题

c++ - 是否有可能在未包含在任何其他文件中的文件中使用 extern 变量?

c - C 中的位打包

c - 使用 fgets() 对 C 程序进行利用

c - 关于缓冲区溢出

c++ - 将私有(private)静态数组作为参数传递给 C++ 中的公共(public)成员函数?

条件编译 - 实现替代方案