关于strlen()和sizeof()使用中遇到的问题总结

1:请慎用strlen()这个函数。

答:曾经把一个char[]数组赋值给了char* 变量,然后strlen()这个char*变量。返回发现得到的长度超过真实的字符数组长度了。官方文档中介绍strlen()这个函数。他会开始遍历字符指针,直到遇到\0.所以当你不能明确知道你操作的字符数组结尾是\0的话,请谨慎使用strlen()这个函数。

2:请慎用sizeof()这个操作符。

答:曾经在一个文件中定义了char[]数组,然后其他其他文件中引用,引用时用到了extern关键字,然后用sizeof()这个操作符想获取char[]字符数组的真实长度。发现报错。因为sizeof()是在编译阶段无法获取char[]真是的长度。然后想到一个简单的办法,就是定义一个结构体,里面包含cha[]数组,和len,就是字符数组的长度。就可以很好的解决这个问题。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容