《C专家编程》:这不是Bug,而是语言特性

无论什么时候,如果遇到了这样一条语句malloc(strlen(str)),几乎可以断定它是错误的,而malloc(strlen(str + 1))才是正确的,这是因为其他的字符串处理库函数几乎都包含一个额外空间,用于容纳字符串结尾的'\0'字符,所以,人们很容易忽略strlen这个特殊情况。 分析编程语言缺陷的一种方法就是把所有的缺陷归于3类:不该做的做了;该做的没做;该做但做得不合适 多做之过
相关文章
相关标签/搜索