我试图在程序中包含以下代码,但将出现错误(“ inet_pton”:未找到标识符)。
// IPv4: struct sockaddr_in ip4addr; int s; ip4addr.sin_family = AF_INET; ip4addr.sin_port = htons(3490); inet_pton(AF_INET, "10.0.0.1", &ip4addr.sin_addr); s = socket(PF_INET, SOCK_STREAM, 0); bind(s, (struct sockaddr*)&ip4addr, sizeof ip4addr);
输出量
error C3861: 'inet_pton': identifier not found
包括标题
#include <stdio.h> #include <stdlib.h> #include "udpDefine.h" #include <windows.h>
任何帮助都可能会丢失一些标头或lib。
功能
int inet_pton(int af, const char *src, void *dst);
在头文件中声明:
#include <arpa/inet.h>
如果是Windows(Vista或更高版本),则有此ANSI版本的Winsock类似物:
INT WSAAPI InetPton( _In_ INT Family, _In_ PCTSTR pszAddrString, _Out_ PVOID pAddrBuf );
尝试#include <Ws2tcpip.h> 添加Ws2_32.lib
#include <Ws2tcpip.h>