注册 登录
编程论坛 VC++/MFC

str.GetBuffer(0)???

喜鹊王子 发布于 2013-03-25 21:38, 2536 次点击
只有本站会员才能查看附件,请 登录
   
CString Port;
GetDlgItemText(IDC_EDIT_PORT_LOCAL,Port);//“端口”编辑框的ID为IDC_EDIT_PORT_LOCAL
m_nPortLocal=atoi(Port.GetBuffer(0));
if(m_nPortLocal<0||m_nPortLocal>65535)
{
   AfxMessageBox("请输入正确的端口!");
   return;
}

标红的那一句话怎么理解啊?Port.GetBuffer(0)返回的到底是什么东东?
3 回复
#2
yuccn2013-03-25 22:17
要学会用msdn啊,那么大的一笔财富不用,太浪费了


CString::GetBuffer
 Returns a pointer to the internal character buffer for the CSimpleStringT object.
 
nMinBufferLength
 The minimum size of the character buffer in characters. This value does not include space for a null terminator.
#3
喜鹊王子2013-03-25 22:29
回复 2楼 yuccn
这里为什么不直接写:
m_nPortLocal=atoi(Port);
#4
yuccn2013-03-25 22:43
因为Port 是CString,是一个对象而
atoi 函数原型是 支持char *的,不一样的参数,怎么能够这样写?
1