struct sockaddr_in sa;
int len = sizeof(sa);
if(!getpeername(sockfd, (struct sockaddr *)&sa, &len))
{
printf( "对方IP:%s ", inet_ntoa(sa.sin_addr));
printf( "对方PORT:%d ", ntohs(sa.sin_port));
}
而getsockname获取一个套接口的本地名字。
#include <winsock.h>
int PASCAL FAR getsockname( SOCKET s, struct sockaddr FAR* name,
int FAR* namelen);
s:标识一个已捆绑套接口的描述字。
name:接收套接口的地址(名字)。
namelen:名字缓冲区长度。