错误4错误C3861:'snprintf':找不到标识符

use*_*936 13 c++ printf visual-studio-2008 visual-c++

我正在通过visual studio 2008在win 7上运行一个程序

我收到此错误:

错误4错误C3861:'snprintf':找不到标识符

我已经包含了stdio标题...

我不知道还有什么可以遗漏

Cor*_*bin 20

在Windows上看起来,该函数以_为前缀.此外,该功能已弃用,有利于更安全的功能:

http://msdn.microsoft.com/en-us/library/2ts7cx93(v=vs.80).aspx

  • `snprintf`是标准的C函数(C99中的新功能).微软对其赞成非标准功能的"弃用"是非常值得怀疑的. (25认同)
  • `snprintf_s`是相当愚蠢的,`snprintf`已经占用了缓冲区的大小,要求它两次有什么好处呢?如果您不想填充整个缓冲区,只需缩小尺寸即可! (5认同)
  • 我不会说该函数在Windows上以`_`为前缀.这不是同一个功能; `_snprintf`不符合`snprintf`的C99要求.特别是,`_snprintf`不保证NUL终止,如果需要更大的缓冲区,则不返回必要的缓冲区大小. (5认同)
  • `snprintf`和`vsnprintf`在VS2014中添加了C99标准支持.请参阅http://blogs.msdn.com/b/vcblog/archive/2014/06/18/crt-features-fixes-and-breaking-changes-in-visual-studio-14-ctp1.aspx. (3认同)