gpt4 book ai didi

c - 对缓冲区大小施加限制

转载 作者:太空宇宙 更新时间:2023-11-04 00:55:20 25 4
gpt4 key购买 nike

是否有任何方法可以对字符缓冲区施加大小限制,这样对缓冲区的任何操作都不会导致越界访问?

最佳答案

简而言之:没有

C 不执行任何运行时检查,除非您手动执行。

您可以使用自己的函数、宏和每个缓冲区簿记来防止无效访问。但是,您将不得不在任何地方 使用此接口(interface),这意味着您将无法直接访问该缓冲区。

由于额外的条件检查,您还会看到对性能的影响。您可以通过对已证明不会导致越界访问的代码分支使用直接访问来避免其中的一些情况。

编辑:

还有一个相当重要的问题,即“一旦检测到无效访问,代码应该做什么”。你的程序是否应该输出错误并退出,就像它在其他语言中遇到异常一样?它应该忽略错误吗?它应该尝试修复它吗?

处理这个问题的 C 方法是先检查再跳跃,确保每个代码分支/部分都是安全的,而不是检查每个访问。

关于c - 对缓冲区大小施加限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4713933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com