MessageBox(hDlg,TEXT("您输入的密码是:")+lpszUser,TEXT("输入成功"),MB_ICONWARNING);编译通不过 TEXT("您输入的密码是:")+lpszUser字符串不能用 + 号用_tcscat, 或用类操作+ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 输入成功了,但执行会异常 MessageBox(hDlg, _tcscat(TEXT("用户名是:"),lpszUser),TEXT("输入成功"),MB_ICONWARNING); _tcscat(TEXT("用户名是:"),lpszUser),=======================你在这个API外部先处理一下不好吗? TCHAR strData[100]; TCHAR * lpszTip = TEXT("您输入的密码是:"); TCHAR * lpszUser = TEXT("67890"); // Copy characters of one string to another. _tcsncpy(strData,lpszTip,_tcslen(lpszTip)); // Append a string. _tcscat(strData,lpszUser); MessageBox(strData); 要对字符串简单地应用真是太难了,有没有像DELPHI一样的函数可查?资料也太少了,就是把上面的字符串函数,在百度google上搜索,少得可怜 C++对字符串这么复杂. 当然没作为一个基本数据结构.确实复杂了点...但是1.如果你想使用 JAVA,c#那样的string...标准库里也有基本的类可以使用.或者MFC里的CString.功能很足够..2.如果你还是习惯面对字符串的本质(字符数组).C++有一群一群 的 字符串处理函数...多的有点过于重复了.(有C++的,有C的,也有MS实现的,很多很多)所以 "C++对字符串这么复杂." 这句话 不那么的认同...你习惯了后 会觉得还是很方便的.."资料也太少了,就是把上面的字符串函数,在百度google上搜索,少得可怜"资料很多很多...绝对比DELPHI的函数资料多.只是因为那两位仁兄给的函数名字 是大家不怎么习惯用的名字..呵呵 所以也许搜索起来比较少..str开头的函数 很多很多的.... 你可以百度下 C++字符串处理函数... 主要是考虑到了 UNICODE 编码,所以才用这个函数。另外,MFC 中的 CString 类支持字符串相加,如下:CString str("123");// str += "456";str = str + "456"; 可以用stringMessageBox(hDlg, _tcscat(TEXT("用户名是:"),lpszUser),TEXT("输入成功"),MB_ICONWARNING); 改成string a = "用户名是:";string b = lpszUser;string c = a + b;MessageBox(hDlg, c.c_str(), TEXT("输入成功"),MB_ICONWARNING); 需要在开头加上#include <string>using namespace std; 既然在MFC框架下为什么不用 CString ?-----c++的标准类 string 也很方便.. 都支持 + 操作.. 用CString还是挺方便的,你要MessageBox之前,先把str给它赋值就可以了:CString str = "您输入的密码是:"+lpszUser; str += "输入成功"; MessageBox(hDlg, str,MB_ICONWARNING); //AfxMessageBox(str,MB_ICONWARNING); 其实使用STL很简单::MessageBox(hDlg,((string)"zzz"+(string)lpszUser).c_str(),TEXT("输入成功"),MB_ICONWARNING);就OK了 另外你在前面还需要加上#include <string>using namespace std ; 我想遍历完之后,想回调一个函数 关于CComBox一个问题 release版本下 _bstr_t是不是有问题?? 获取计算机串口资源列表 UDP发送,接受数据问题! 关于服务器向客户机发送数据的问题!!! 如何在对话框中的CRichEditCtrl里面使用Tab排版? 我要从图象文件中取出某一块,显示在画面上,怎么做? ftgl绘制文字时,文字反过来了 在响应WM_RBUTTONUP的时候发送消息出现了奇怪的现象。 VC程序关于打印时DPI的限制问题 请问如何在group box中添加一段小文章大小的那么多文字?谢谢!
MessageBox(hDlg, _tcscat(TEXT("用户名是:"),lpszUser),TEXT("输入成功"),MB_ICONWARNING);
=======================
你在这个API外部先处理一下不好吗?
TCHAR strData[100];
TCHAR * lpszTip = TEXT("您输入的密码是:");
TCHAR * lpszUser = TEXT("67890"); // Copy characters of one string to another.
_tcsncpy(strData,lpszTip,_tcslen(lpszTip)); // Append a string.
_tcscat(strData,lpszUser); MessageBox(strData);
资料也太少了,就是把上面的字符串函数,在百度google上搜索,少得可怜
当然没作为一个基本数据结构.确实复杂了点...但是
1.
如果你想使用 JAVA,c#那样的string...标准库里也有基本的类可以使用.或者MFC里的CString.功能很足够..
2.
如果你还是习惯面对字符串的本质(字符数组).
C++有一群一群 的 字符串处理函数...多的有点过于重复了.(有C++的,有C的,也有MS实现的,很多很多)所以 "C++对字符串这么复杂." 这句话 不那么的认同...
你习惯了后 会觉得还是很方便的..
"
资料也太少了,就是把上面的字符串函数,在百度google上搜索,少得可怜
"
资料很多很多...绝对比DELPHI的函数资料多.
只是因为那两位仁兄给的函数名字 是大家不怎么习惯用的名字..呵呵 所以也许搜索起来比较少..
str开头的函数 很多很多的....
你可以百度下 C++字符串处理函数...
主要是考虑到了 UNICODE 编码,所以才用这个函数。另外,MFC 中的 CString 类支持字符串相加,如下:CString str("123");// str += "456";
str = str + "456";
MessageBox(hDlg, _tcscat(TEXT("用户名是:"),lpszUser),TEXT("输入成功"),MB_ICONWARNING);
改成
string a = "用户名是:";
string b = lpszUser;
string c = a + b;
MessageBox(hDlg, c.c_str(), TEXT("输入成功"),MB_ICONWARNING);
#include <string>
using namespace std;
都支持 + 操作..
str += "输入成功";
MessageBox(hDlg, str,MB_ICONWARNING); //AfxMessageBox(str,MB_ICONWARNING);
::MessageBox(hDlg,((string)"zzz"+(string)lpszUser).c_str(),TEXT("输入成功"),MB_ICONWARNING);
就OK了
加上
#include <string>using namespace std ;