怎么给一个CString类变量赋一个回车换行啊?在vs2010里 CString BL; BL=0x0d;BL=0x0a; 这样为什么不行呀?

CString BL;
BL=0x0d;BL+=0x0a;
打错一个地方

回答第一个问题。

方法1.
CString 有一个很好的函数,叫做Format。
例如:
CString.Format("%s","Hello\n");
他的用法和C里面的printf很相像。
这样,就可以间接地赋值。
CString a,b;
b=a;
a.Format("%s\n",b);
而且,Format()函数的强大不仅体现在加上一个回车符上,关键是它可以极其方便的用各种数据类型赋值,具体参考printf函数。
例如:
int a=1;
CString b;
b.Format("%d",a);
又如:
char c='\n';
b.Format("%c",c);
又如:
double a=535.45;
CString s;
s.Format("%ld",a);
等等等等。
方法2.
使用CString自带的“+”操作符。
即,CString b="HELLO";
b=b+"\n";
其实也可以这么写:
b=b+'\n'
也就是CString可以加上字符。它的“+”操作符封装了对char类型的操作。
但是,它的“+”操作符没有封装对整数的操作。要想使用整数进行赋值,先要使用强制类型转换。 (这个操作符封装的概念涉及到很多东西,但是用起来很方便。如果不会的话,学一学也不错。操作符封装是属于类的范畴的。)
例如:
CString bl;
bl=char(0x0d);
bl+=char(0x0a);
这样就可以了。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-02-18
BL += "\n"; //+=字符串就行了
或者有需要 BL += "\r\n";

BL = 0x0d; 你给它赋值整数?? 整数到CString没有转换!!!
第2个回答  2011-02-18
字符串说明白了就是一串字符组成的.
但是字符串的的写法是CString BL = "Hello";
而字符的赋值是char bl = 'a';
所以在使用+=时, 应该是使用BL += "STRING".

...CString BL; BL=0x0d;BL=0x0a; 这样为什么不行呀?
CString.Format("%s","Hello\\n");他的用法和C里面的printf很相像。这样,就可以间接地赋值。CString a,b;b=a;a.Format("%s\\n",b);而且,Format()函数的强大不仅体现在加上一个回车符上,关键是它可以极其方便的用各种数据类型赋值,具体参考printf函数。例如:int a=1;CString b;b.Format("...

VS2010中cstring的类对象怎么转换成char型的变量,麻烦试成功了再回复...
你好: 下面是转换代码,这样转得前提是str 的长度是1.char c = Convert.ToChar(str);Covert这个类是可以强制转换成任何类型的。 比如Convert.ToInt32() ..Convert.ToDateTime()..等你可以了解一下

怎样传入cstring参数进行MD5加密,谁有这个函数?
CString myMd5(CString str);就是你要的函数。。。共两个文件(这是必须的。一个头文件md5.h,一个代码文件md5.cpp)添加到工程中。将md5.h包涵进来了就可以用CString myMd5(CString str);这个全局函数。代码:\/\/\/md5.h this is the head of the class md5.#include <windows.h>#include <fstream.h>#ifnd...

在C++中如何编出一个函数将整型数转化为字符串形式输出?
它们是颠倒顺序排列的;字符”0”的ASCII值加上1等于”1”的ASCII值,以此类推。因此,数字字符的ASCII就等于这个数字加上字符”0”的ASCII值。(注意,字符”0”的ASCII值是一个不等于零的数值,而这个数值代表着字符”0”。)也就是说,只要用数字字符的ASCII值减去字符”0”的ASCII值就能得到该数...

如何用C++做一个浏览器程序
1.首先在VC++ 6.0的主窗口中选择菜单“File\/New”,新建一个工程,使用“MFC AppWizard(exe)”向导,工程名为“SimpleIE”,然后单击“OK”按钮。2.接下来会有6个向导步骤。第一步选择“Single document”(单文档界面)支持,语言选择“中文”,其余按默认值,单击“Next”按钮。3.在接下来的...

用C++编写一个小型复数计算器
\/\/是最后一个字符,复数对象已接受完,用sign*n为虚部赋值break;}while(s[k]>='0' && s[k]<='9')\/\/当前字符在0~9之间,将数字字符转换成数字数值{n=n*10+s[k]-'0';k++;}}if(s[len-1]!='i' && n!=0)\/\/如果最后一个字符不是'I',表示复数对象内只有实部,没有虚部{com.Real=n*sign;...

在vc里面,16进制怎么转换成字符?
对于Format所不支持的数据类型,可以通过上面所说的关于其它数据类型转化到char *的方法先转到char *,然后赋值给CString变量。 四、BSTR、_bstr_t与CComBSTR CComBSTR 是ATL对BSTR的封装,_bstr_t是C++对BSTR的封装,BSTR是32位指针,但并不直接指向字串的缓冲区。

我想知道QQ这个新版本的动态键盘加密技术到底是什么
1000B72A 8B45 08 mov eax,dword ptr ss:[ebp+8] 将数据的开始地址赋给EAX,实际数据为**Data,EAX=*Data 1000B72D 53 push ebx 1000B72E 56 push esi 1000B72F 57 push edi 1000B730 8B30 mov esi,dword ptr ds:[eax] 需要转换的字符串,EAX指示一个结构,第一个成员为实际的数据指针 1000B732 894...

sprintf函数,如果第一个参数与第三个参数相同
不要这样做,这是未定义的行为。参考资料:网页链接 C 标准及POSIX 指定 sprintf 及其变体的行为在参数与目标缓冲区重叠时未定义。示例:sprintf(dst, "%s and %s", dst, t); \/\/ <- 有错:未定义行为

QQ密码加密原理???
1000B763 E8 CE050000 call BasicCtr.1000BD36 在内存(ECX+9C)处开辟一个(100H)字节的空间,空间地址返回到EAX 1000B768 8365 E0 00 and dword ptr ss:[ebp-20],0 局部变量[ebp-20]清零 1000B76C 0FB7C7 movzx eax,di 转换到EAX,对于EWH,di=3。表示有3段数据 1000B76F 85C0 test eax,eax 1000...

相似回答