我有一个代码,每次启动时优化编译器总是失败。
char* GetWinSockVersion()
{
char *tmpData = (char*)malloc(sizeof(wsaData.wVersion));
_itoa_s<wsaData.wVersion>(wsaData.wVersion, tmpData, 10);
return tmpData;
}
它确实失败了_itoa_s
。我很感兴趣,为什么它总是失败?
我有一个代码,每次启动时优化编译器总是失败。
char* GetWinSockVersion()
{
char *tmpData = (char*)malloc(sizeof(wsaData.wVersion));
_itoa_s<wsaData.wVersion>(wsaData.wVersion, tmpData, 10);
return tmpData;
}
它确实失败了_itoa_s
。我很感兴趣,为什么它总是失败?
您没有正确使用该功能。
_itoa_s
需要 4 个参数。
此函数旨在与 一起使用c
,因为c++
您有流。
您的代码应该更像(假设wsaData.wVersion是一个数字)
char *tmpData = (char*)malloc(sizeof( char ) * 80 );
_itoa_s(wsaData.wVersion , tmpData , 80 , 10);
//_itoa_s(number to convert , target string, size of target string, number base);