inet_ntoa The Windows Sockets inet_ntoa function converts an (Ipv4) Internet network address into a string in Internet standard dotted format.char FAR * inet_ntoa ( struct in_addr in );
Parameters in [in] A structure that represents an Internet host address. Res The inet_ntoa function takes an Internet address structure specified by the in parameter and returns an ASCII string representing the address in ".'' (dot) notation as in "a.b.c.d''. The string returned by inet_ntoa resides in memory that is allocated by Windows Sockets. The application should not make any assumptions about the way in which the memory is allocated. The data is guaranteed to be valid until the next Windows Sockets function call within the same thread, but no longer. Therefore, the data should be copied before another Windows Sockets call is made.Return Values If no error occurs, inet_ntoa returns a char pointer to a static buffer containing the text address in standard ".'' notation. Otherwise, it returns NULL.
MultiByteToWideChar(CP_ACP, ...);
#else
//直接格式化即可,sprintf()/StringCchPrintf()/strcpy_s();
#endif或者使用CString类对象
char buf[] = ...;
CString strText(buf);
你在unicode下,同样可以使用std::string,同样可以编译lua源代码,boost源代码。并不是你的程序里面没有char(*)了,你的程序才专业,才通用,关键看你怎么用,winsock的API用了这么多年,它都是const char*参数的,没人说过它不通用,不管是否是unicode版本(目前绝大多数软件都是unicode版本)。
The Windows Sockets inet_ntoa function converts an (Ipv4) Internet network address into a string in Internet standard dotted format.char FAR * inet_ntoa (
struct in_addr in
);
Parameters
in
[in] A structure that represents an Internet host address.
Res
The inet_ntoa function takes an Internet address structure specified by the in parameter and returns an ASCII string representing the address in ".'' (dot) notation as in "a.b.c.d''. The string returned by inet_ntoa resides in memory that is allocated by Windows Sockets. The application should not make any assumptions about the way in which the memory is allocated. The data is guaranteed to be valid until the next Windows Sockets function call within the same thread, but no longer. Therefore, the data should be copied before another Windows Sockets call is made.Return Values
If no error occurs, inet_ntoa returns a char pointer to a static buffer containing the text address in standard ".'' notation. Otherwise, it returns NULL.