mfc的IP地址怎么获取

0

//就是端口号和IP地址的地方怎么写才对(text是一个edit control控件的变量名)


CString s1,s2;
int a;

sockaddr_in addr;

//获取控件的字符串
text.GetWindowTextW(s1);
text2.GetWindowTextW(s2);


//就是这个地方怎么写
//将字符串传到IP地址的地方

		a = _tstoi(s2);			//端口号
		addr.sin_family=AF_INET;
		addr.sin_port=a;
		addr.sin_addr.S_un.S_addr = inet_addr(s1.GetBuffer());		//IP地址


ava
/*旧梦*/

2021-10-6

0

端口号需要整型数据,inet_addr 需要字符串指针参数。

所以,你的问题是:怎样将 CString 转换为 int,以及怎样将 CString 转换为 LPCTSTR。

  1. CString 转换为整型:
CString str = "123";
int a = _ttoi(str);
  1. CString 转换为 LPCTSTR:直接用,无需转换,这正是 CString 的巧妙设计之处。

对应的,你的代码可以修改为:

a = _ttoi(s2);			//端口号
addr.sin_addr.S_un.S_addr = inet_addr(s1);		//IP地址
ava
慢羊羊

2021-10-9

技术讨论社区