第2条 字符串格式化的“动物庄园”之一:sprintf
对于Sutter来说,他肯定很不喜欢sprintf。我也不是特别的喜欢,但是不要忘了他的优点,简单,效率高,对我来说,效率非常非常重要,以至于它要成为一个习惯。
我们来表述一下sprintf的原罪,类型安全性,这不单单是sprintf吧,所有格式化的c函数都存在这个问题,我们可以把它认为是c的原罪。那么,next,buf的溢出,这真是一个让人烦恼的问题,但是我觉得这在大多数情况下应该可以得到避免,作为一个C++程序员如果不能很好的控制buf显然是不合格的,那么需要的是什么?就是在这个地方提高警惕。模板亲和性,得了吧,不是一个层面的东西,要是需要用到模板,只能另想办法。我平时使用Windows平台,所以CString用的比较多,但这依然不能避免上述模板亲和性的问题。