C++ 编程
获取界面值
方法1
CString str;//密文
GetDlgItem(IDC_EDIT1)->GetWindowText(str);
方法2
CString str;
GetDlgItemText(IDC_EDIT1,str); ///这儿就是取该输入框的值,并赋给str;
类型转换
1.CString->int、long、double、long long
CString strTest = "1000 test";
int i = 0;
i = _ttoi(strTest);
strTest = "-199 dollars";
long l = 0;
l = _ttol(strTest);
double v1;
CString m_str;
v1 = _wtof(LPCTSTR(m_str));
long long v1;
CString m_str;
v1 = _wtoll(LPCTSTR(m_str));
2.CString->char*
//使用强制类型转换将CString转为LPCTSTR
CString str("Test");
LPCTSTR pStr = str;
//使用CString的GetBuffer函数,在使用CString对象的其他的任何成员之前必须调用ReleaseBuffer释放缓冲区。
CString str("Test");
LPCTSTR pStr = str.GetBuffer(0);
// 直接访问CString的缓冲区
char* psz = NULL;
strcpy(psz , "Hello");
str.ReleaseBuffer();
//强制将CString转换为LPTSTR
CString str("Test");
LPTSTR pStr = (LPTSTR)(LPCTSTR)str;
3.double转CString
double dTest = 3.141592653589793;
CString strTest;
strTest.Fromat(_T("%f"),dTest);
strTest.Fromat(_T("%.10f"),dTest);//保留10位小数
需包含头文件#include
* 转string
string *tos(* i) //改一下函数名,改一下类型,搞定
{
ostringstream os;
os<<i;
string result;
istringstream is(os.str());
is>>result;
return result;
}
将*换成想要的类型就可以执行 *转string
string 转 *
* sto*(string str) //改一下函数名,变量类型,搞定
{
* result;
istringstream is(str);
is >> result;
return result;
}
将换成想要的类型就可以执行 string转