可以使用以下几个函数r
r
i
tgetsock
amei
tsockfdstructsockaddrlocaladdri
taddrle
r
i
tgetpeer
amei
tsockfdstructsockaddrpeeraddri
taddrle
r
structserve
tgetservby
ameco
stcharserv
ameco
stcharproto
amer
structserve
tgetservbyporti
tportco
stcharproto
amer
structserve
tr
r
chars_
ame正式服务名r
chars_aliases别名列表r
i
ts_port端口号r
chars_proto使用的协议r
r
r
一般我们很少用这几个函数对应客户端当我们要得到连接的端口号时在co
ect调用成功后使用可得到r
系统分配的端口号对于服务端我们用INADDR_ANY填充后为了得到连接的IP我们可以在accept调用成功后使用而得到IP地址r
在网络上有许多的默认端口和服务比如端口21对ftp80对应WWW为了得到指定的端口号的服务我们可以调用第四个函数r
相反为了得到端口号可以调用第三个函数r
r
35一个例子r
r
CODECopytoclipboardr
r
i
cludestdlibhr
i
cludestdiohr
i
cludeerr
ohr
i
cludestri
ghr
i
cludeu
istdhr
i
clude
etdbhr
i
cludesyssockethr
i
clude
eti
eti
hr
i
cludesystypeshr
i
cludearpai
ethr
r
i
tmai
i
targccharargvr
r
structsockaddr_i
addrr
structhoste
thostr
charaliasr
r
ifargc2r
r
fpri
tfstderr