对于新项目,我应该更喜欢哪个功能? 来自 strsafe.h 或 sprintf_s 的 StringCchVPrintf
最佳答案
我建议使用 snprintf如果您使用 C 编写代码(因为 snprintf
在 C99 标准中)。
如果您使用 C++ 编写代码,请考虑使用 std::ostringstream ,它在 C++ 标准库中。
snprintf
和 ostringstream
应该在许多系统上都可用,包括非 Windows 系统。
我通常建议尽可能按照标准进行编码。它将简化您的软件到其他系统的端口。尽量避免(或至少在使用时要小心)使用仅在 WinApi 中可用的函数(AFAIK,没有定义它的标准规范;它只是一个专有实现,大多数其他系统都没有)。
如果您的应用程序有图形界面,您可以考虑使用跨平台工具包库,例如Qt : 它为您提供了一个抽象(Qt API),它应该可以在多个操作系统上工作。
关于c++ - StringCchVPrintf 与 sprintf_s,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8692819/