c语言显示电脑ip,用C语言编程显示主机IP地址!

满意答案

dcebd7a0de6265b6ccae5ead692f1eab.png

5df4656rre

2013.05.28

dcebd7a0de6265b6ccae5ead692f1eab.png

采纳率:42%    等级:12

已帮助:16815人

程序如下所示:完全满足你的要求

#include

int WSA_return;

WSADATA WSAData;

HOSTENT *host_entry;

char host_name[256];

char host_address[256];

int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)

{

WORD temp=0x0101;

WSA_return=WSAStartup(temp,&WSAData);

if(WSA_return==0)

{

gethostname(host_name,256);

host_entry=gethostbyname(host_name);

if(host_entry!=0)

{

wsprintf(host_address,"%d.%d.%d.%d",

(host_entry->h_addr_list[0][0]&0x00ff),

(host_entry->h_addr_list[0][1]&0x00ff),

(host_entry->h_addr_list[0][2]&0x00ff),

(host_entry->h_addr_list[0][3]&0x00ff));

MessageBox(NULL,host_address,host_name,MB_OK);

}

}

WSACleanup();

return 0;

}

但是需要注意:用Visual C++6.0编译Windows C程序,使用Winsock API函数时,首先要把wsock32.lib添加到它的库模块中,否刚在链接的时候,会出现“error LNK2001”错误。添加wsock32.lib的具体步骤是:打开工程菜单,选择设置,在弹出的Project settings对话框中,点击link选项卡,然后在对象/库模块文本框中添加wsock32.lib。

我用的是win32模式,而不是win32 console application模式,原因是winsock中的函数是以win API为基础的。其中的主函数是WinMain()

00分享举报

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值