不知道为什么对这里渐渐有点失望~群里提了个问题~一直没人回答~或许我是菜鸟~那些高人不懈回答我的问题~在vcgood群里呆着~在php的群里却觉得让我受益非浅~里面很好的技术讨论氛围~有时别人提出的一些问题~我们同时也在提出些方案解决~在很多人提出的各种解决方案~同自己提出的解决方案对比~觉得自己有时对一个问题的理解也加深了~或许觉得以后还是继续混msdn~至少我在那里我能更好的得到学习气氛~
还是在这里把群里发过的问题再发一次~希望vcgood里还有人:
#include “winsock.h”
#include “stdio.h”
#pragma comment(lib,”wsock32.lib”)
int main(int argc, char *argv[])
{
struct hostent *host;
if((host=gethostbyname(“www.hao123.com”))==NULL)/*取得主机IP地址*/
{
fprintf(stderr,”Gethostname error, %s\n”, strerror(errno));
exit(1);
}
return(1);
}
不能获取到ip地址~执行完gethostbyname函数后~host值为0×000000~也就是NULL,
为什么获取不到ip?
>> 本文固定链接: http://www.vcgood.com/archives/1883
真的不好意思我还没有学完
我才学到数组,不能帮你忙!
因为使用Socket的程序在使用Socket之前必须调用WSAStartup函数。
你没有调用WSAStartup函数,所以返回NULL,
更多资料请看
http://www.vcgood.com/forum_posts.asp?TID=1885&PN=1&TPN=1
代码如下:
#include “winsock.h”
#include “stdio.h”
#pragma comment(lib,”wsock32.lib”)
int main(int argc, char *argv[])
{
struct hostent *host;
//加入这段话
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 )
{
return 1;
}
//结束
if((host=gethostbyname(“http://www.hao123.com“))==NULL)/*取得主机IP地址*/
{
fprintf(stderr,”Gethostname error, %s\n”, strerror(errno));
exit(1);
}
//还有以下这段话,一定要加
WSACleanup( );
return(1);
}
群没人回答问题不是因为你菜,也不是大家不肯帮忙.而是也许大家都很忙,有什么问题可以发到BBS,会有更多人帮你的..
我也发现我范的这个低级的错误了~好久没写程序了~一下没注意到这个~