mfc怎么获取本机网段的广播地址
答案:2 悬赏:40 手机版
解决时间 2021-01-29 03:31
- 提问者网友:蓝莓格格巫
- 2021-01-28 21:11
mfc怎么获取本机网段的广播地址
最佳答案
- 五星知识达人网友:英雄的欲望
- 2021-01-28 22:12
广播地址就是本网段内已255结尾的IP地址,所以只需找到本机的IP地址,再将最后一个字段替换为255即可,代码如下:
SInfo& info=m_info;
gethostname(info.sHost,sizeof(info.sHost)); //获取主机名
hostent* pHost=gethostbyname(info.sHost); //将主机名转化为IP地址
in_addr* ad=(in_addr*)pHost->h_addr;
strcpy_s(info.sIP,inet_ntoa(*ad)); //网络IP
DWORD dw=sizeof(info.sName);
GetUserName(info.sName,&dw);
CString sIP = info.sIP; //获取IP地址
int i=sIP.ReverseFind('.'); //找到最后一个字段分隔符
sIP = sIP.Left(i+1)+"255"; //替换为255, sIP 即为本机网段的广播地址
SInfo& info=m_info;
gethostname(info.sHost,sizeof(info.sHost)); //获取主机名
hostent* pHost=gethostbyname(info.sHost); //将主机名转化为IP地址
in_addr* ad=(in_addr*)pHost->h_addr;
strcpy_s(info.sIP,inet_ntoa(*ad)); //网络IP
DWORD dw=sizeof(info.sName);
GetUserName(info.sName,&dw);
CString sIP = info.sIP; //获取IP地址
int i=sIP.ReverseFind('.'); //找到最后一个字段分隔符
sIP = sIP.Left(i+1)+"255"; //替换为255, sIP 即为本机网段的广播地址
全部回答
- 1楼网友:零点过十分
- 2021-01-28 23:16
没看懂什么意思?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯