【发布时间】:2015-02-25 18:57:06
【问题描述】:
我的代码:
m_ListCtrlCandidates.InsertItem(i, _itoa_s(candidate[i].ID, (char*)(LPCTSTR)str, 10));
m_ListCtrlCandidates.SetItemText(i, 1, _itoa(candidate[i].FingerNumber, (char*)(LPCTSTR)str, 10));
m_ListCtrlCandidates.SetItemText(i, 2, _itoa(candidate[i].SampleNumber, (char*)(LPCTSTR)str, 10));
m_ListCtrlCandidates.SetItemText(i, 3, _itoa(candidate[i].ConfidenceLevel, (char*)(LPCTSTR)str, 10));
错误:
Error 2 error C4996: '_itoa': This function or variable may be unsafe. Consider using _itoa_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. d:\documents\visual studio 2013\projects\gatekeeper\gatekeeper\gatekeeperdlg.cpp 416 1 Gatekeeper
我使用的 SDK 在其示例中包含以下代码。它将潜在匹配项添加到对话框中的列表中。最初,我将我的项目设置为 unicode 并更新了代码以使其正常工作。这给我带来了麻烦,所以我查看了示例代码,它的字符集是空白的。所以我改变了我的,现在我得到了这个错误。
如果我将它切换到 _itoa_s,我会收到函数不接受 3 个参数的错误。所以我想我错过了 size 参数,但我不确定它应该是什么大小。此外,当保留为 _itoa 时,它在他们的示例代码中编译得很好。
我真的很想将其保留为 Unicode。使用 _wtoi 而不是 atoi 在其他地方有所帮助。这个案例有类似的吗?
【问题讨论】: