inet_pton inet_ntop 注意点使用
2011-07-30 09:38
429 查看
#include <string.h>//bzero memset
#include <netinet/in.h>//struct in_addr
#include <sys/socket.h>//AF_INET
#include <arpa/inet.h>
int
main(int argc, char **argv)
{
char str[]="172.16.10.196";//
char str1[16];
struct in_addr myin;
int ret = 1;
unsigned long lip = 0xac100ac4;
ret = inet_pton(AF_INET,str,&myin); //转换出来的myin是网络序的
printf("%2X/n",myin.s_addr);
myin.s_addr = ntohl(myin.s_addr);
printf("%2X/n",myin.s_addr);
printf("%2X/n",lip);
lip = htonl(lip); //要先将lip转换成网络序的
printf("%2X/n",lip);
ret = inet_ntop(AF_INET,&lip,str1,__SOCK_SIZE__);
printf("%s/n",str1);
exit(0);
}
inet_pton的输出是网络序的
inet_ntop的输入是网络序的
inet_ntop()是协议无关的地址转换函数,要考虑可重入性
#include <netinet/in.h>//struct in_addr
#include <sys/socket.h>//AF_INET
#include <arpa/inet.h>
int
main(int argc, char **argv)
{
char str[]="172.16.10.196";//
char str1[16];
struct in_addr myin;
int ret = 1;
unsigned long lip = 0xac100ac4;
ret = inet_pton(AF_INET,str,&myin); //转换出来的myin是网络序的
printf("%2X/n",myin.s_addr);
myin.s_addr = ntohl(myin.s_addr);
printf("%2X/n",myin.s_addr);
printf("%2X/n",lip);
lip = htonl(lip); //要先将lip转换成网络序的
printf("%2X/n",lip);
ret = inet_ntop(AF_INET,&lip,str1,__SOCK_SIZE__);
printf("%s/n",str1);
exit(0);
}
inet_pton的输出是网络序的
inet_ntop的输入是网络序的
inet_ntop()是协议无关的地址转换函数,要考虑可重入性
相关文章推荐
- inet_pton inet_ntop 注意点使用
- inet_pton/inet_ntop 例程及注意点
- VS inet_ntoa,inet_addr不能使用,inet_ntop,inet_pton
- inet_ntoa使用时要注意
- Linux函数--inet_pton / inet_ntop
- [zz]inet_pton, inet_ntop
- inet_ntoa 连续使用 注意事项
- inet_pton inet_ntop inet_aton htonl
- inet_pton()和inet_ntop()函数详解
- socket编程总结(二) inet_pton,/inet_ntop
- inet_pton、inet_ntop
- inet_ntop(), inet_pton()
- (转载)inet_ntop, inet_pton
- inet_addr() inet_ntoa() inet_pton inet_ntop sockaddr_in
- 地址转换函数inet_aton、 inet_ntoa、 inet_addr和inet_pton 、inet_ntop
- 网络字节转换inet_aton & inet_ntoa & inet_addr和inet_pton & inet_ntop
- inet_pton, inet_ntop
- inet_pton 和 inet_ntop(借鉴于百度百科)
- 网络字节转换inet_aton & inet_ntoa & inet_addr和inet_pton & inet_ntop
- inet_ntoa使用时要注意