1:请慎用strlen()这个函数。
答:曾经把一个char[]数组赋值给了char* 变量,然后strlen()这个char*变量。返回发现得到的长度超过真实的字符数组长度了。官方文档中介绍strlen()这个函数。他会开始遍历字符指针,直到遇到\0.所以当你不能明确知道你操作的字符数组结尾是\0的话,请谨慎使用strlen()这个函数。
2:请慎用sizeof()这个操作符。
答:曾经在一个文件中定义了char[]数组,然后其他其他文件中引用,引用时用到了extern关键字,然后用sizeof()这个操作符想获取char[]字符数组的真实长度。发现报错。因为sizeof()是在编译阶段无法获取char[]真是的长度。然后想到一个简单的办法,就是定义一个结构体,里面包含cha[]数组,和len,就是字符数组的长度。就可以很好的解决这个问题。
网友评论