该错误指出,在调试LZO时,snprintf的宏定义与标准库函数声明冲突

时间:2018-03-17 14:15:29

标签: visual-studio-2015 lzo

我已经用cmake编译了lzo的原始代码,我试图调试VS项目lzo.sin,但VS的提示注意到了

#error:  Macro definition of snprintf conflicts with Standard Library function declaration,

enter image description here

然后我发现有人说是因为VS2015定义了snprintf,项目中的代码也定义了它,因此出现了错误。我用lzo_supp.h文件替换了代码#define snprintf _snprintf

#  ifndef
#    define snprintf _snprintf
#  endif

但错误仍然存​​在。我不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

我用过

#if _MSC_VER < 1900 
#define snprintf _snprintf
#endif

仍在学习c ++,几周前开始,所以我不知道如何修复它,除此之外只需要在2015年以后的VS版本上定义它。在这里我找到了答案 https://forum.juce.com/t/solved-error-with-vs2015-regarding-snprintf/14831/3