gpt4 book ai didi

c - 宏 VA_ARGS 到 VS2010 VC

转载 作者:太空宇宙 更新时间:2023-11-04 00:08:43 24 4
gpt4 key购买 nike

在带有 Linux 的 GNU-GCC 中这是有效的#define sprintfc(string, ...) sprintf(string+strlen(string), ##__VA_ARGS__)Visual Studio 2010 有同样效果的定义吗?

最佳答案

Microsoft Visual C 编译器 does support variadic macros .然而,问题是the GCC extension ## , 如果没有传递参数,它会删除前导逗号。

因为在没有第二个参数的情况下永远不会调用 sprintf(),所以如果您只删除 ##,您的代码应该可以正常工作。

关于c - 宏 VA_ARGS 到 VS2010 VC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12265916/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com