首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

ip长整型与字符串转换解决办法

2012-04-28 
ip长整型与字符串转换ip长整型与字符串转换connInfo-sd accept(basicSocket, (sockaddr*)&socaddr, &nl

ip长整型与字符串转换
ip长整型与字符串转换
connInfo->sd = accept(basicSocket, (sockaddr*)&socaddr, &nlen);
  connInfo->port = socaddr.sin_port;
  connInfo->addr = socaddr.sin_addr.S_un.S_addr;
connInfo结构赋值后如上
我现在想将接收到客户端的ip地址打印出来
sockaddr_in adr;
  adr.sin_addr.S_un.S_addr = ntohl(coInfo.addr);
  char *p = inet_ntoa(adr.sin_addr);
  cout<<*p<<*p++<<*p++<<*p++<<*p++<<*p++<<*p++<<*p++<<*p++<<endl;
结果是721.0.0.1
不知道哪儿错了 


[解决办法]
为什么不能直接 cout << p << endl; 呢
[解决办法]
为什么要加ntohl,不加怎样?
[解决办法]
adr.sin_addr.S_un.S_addr = ntohl(coInfo.addr);

去掉这个

热点排行