<分区>
这是一个关于编程风格的问题,而不是关于技术性的问题: 我的 C 函数是否应该始终需要数组长度的参数,尽管该函数不依赖于它?
所以要么像这样 void foo(int* a, int size)
要么像 void foo(int* a)
例如当函数只操作数组的前 128 位时,函数是否需要数组长度并首先检查数组的长度是否正确,或者我应该相信调用者他遵循文档并且只调用函数数组的正确大小?
我是 C 的新手,所以我担心可能会出现缓冲区溢出之类的问题。为什么一个比另一个更好的技术推理会很棒。谢谢!