我刚刚将我的IDE更改为来自MSVC 6的MS Visual Studio 2005,并且我收到了很多弃用警告.我没有忽略警告,而是开始将它们改为_s等价物.但是,我发现这些只是微软的实现.
我在某处读到他们正在推动这些成为标准的一部分.是吗?
使用这些_s函数是个好主意吗?或者我应该使用其他东西?
谢谢.
* _s()函数不是C标准的一部分,但有一个待定的“技术报告”建议添加它们(我不确定TR中的例程是否与Microsoft的例程完全相同或者如果它们’我只是相似).
TR 24731-1:C库的扩展第一部分:边界检查接口:
> http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1225.pdf
如果要继续使用旧函数,可以通过定义宏_CRT_SECURE_NO_WARNINGS(可能仍然支持_CRT_SECURE_NO_DEPRECATE)来保持弃用警告的安静.