最佳初始化代码
回答
对于空终止字符串,在我看来,最佳的初始化这个
szCommand[0] = 0;
不是最优目的? – ybungalobill
@ybungalobill,是的。我发布了另一种方式,OP可能会发现它确定。 –
关于将一个字节与2048字节设置为零之间的差异没有任何“目标”。如果这是一个字符串,则一个字节就足够了。 –
任何像样的编译器应该发出两种情况下相同的代码。在memset
的情况下,编译器可以通过理解标准库中函数的语义来消除函数调用。
但是,某些编译器将memset实现为内部函数,而且情况正好相反,编译器会将第一个代码示例替换为第二个代码示例。无论如何,这两种情况下都必须清除内存。 –
第二个不是初始化数组,它更像是赋值给它。我认为如果以后会有什么明显的区别(不会有),你必须亲自分析它,并且看到第一个版本可能会更快一点 - 但这只是在优化结束时。 过早的优化是所有罪恶的根源 - 只是DON“T想想
+1对'tiiiiiny'。 :P – Donotalo
两个版本之间的性能差别是如此微不足道(如果编译器不优化掉的区别),我” ð倾向于最可读的一个去。
两者都是一样的,第一个版本是紧凑 - 而已。
- 1. Knockout Mapping初始化的最佳代码
- 2. 弹簧配置 - 最佳做法与初始化代码
- 3. 在Java Swing中初始化代码的最佳实践
- 4. 编程最佳实践:初始化或不初始化
- 5. WCF初始化代码
- 6. 动态初始化代码
- 7. 最佳方式初始化活动ViewPager
- 8. 初始化JpaPersistModule的最佳方法
- 9. 初始化MobileServicesClient的最佳位置
- 10. 初始化文件最佳实践
- 11. JPA(Hibernate)表初始化,最佳实践
- 12. 最佳HashSet初始化(Scala | Java)
- 13. EntityManager初始化最佳实践
- 14. 代码格式化初始化列表
- 15. Django初始化后执行代码
- 16. 在代码中初始化backgroundWoker
- 17. 修改swiper初始化代码
- 18. 的Object.create继承和初始化代码
- 19. 骨干视图的初始化代码
- 20. 初始化代码中的infopath
- 21. 初始化器元件代码错误
- 22. 代码行未初始化导致nullpointerexecption
- 23. 初始化遗址我的代码
- 24. 在Meteor重新初始化代码
- 25. 不等待类初始化的代码!
- 26. 未初始化代码的一部分
- 27. 初始化图形代码块C++
- 28. 辛格尔顿+初始化代码
- 29. Python中奇怪的初始化代码
- 30. 在EJB3.1中执行初始化代码
只需在字符串末尾加上''\ 0'' –
看到这个几乎相同的问题http://stackoverflow.com/q/1998752/57428 – sharptooth
@maanu,你需要多少性能好处? – Donotalo