CString重载了[]操作符
CByteArray 类型,RemoveAll移除所有的元素
SetSize设置数组的大小
SetAt设置某个索引对应的数值
在vs中把字符串转化成LPCWSTR类型在赋值给CString类型
Cstring.GetBuffer得到的字符串直接强转化成char*会导致数据丢失
把Cstring赋值给char * buf,需要使用多字节编码方式
sprintf(buf,“%ls”,CStr.GetBuffer(CStr.GetLength()));//不适用汉字
或memspy(buf,cstr.Getbuffer(CStr.GetLength()),CStr.GetLength());
使用unicode编码时,汉字会显示不正确,在项目->属性->常规中,修改字符集属性为,使用多字节字符集就好了,而且需要用memcpy进行Cstring->char*的转换
char * 转Cstring: Cstring str(char*);
Vs2005设置可执行文件的输出路径:连接器-》常规-》输出文件
配置属性-》常规-》输出目录
Vs中调试dll源码,将dll的输出路径设置的和exe的输出路径相同,使得两者同步
Vs中检测内存泄露:
_CrtSetBreakAlloc(92);在App的Instance函数中调用此函数
92为output窗口显示的内存泄露的地方
debug调试工程
触发断点后,点击中断,跳出到自己的文件
vc6中设置命令行参数:project->setting->debug->命令变量
串口通信时,不能连续发送两次,即不能连续调用两次SetOutput
UpdateData(bool)
False:变量值->控件显示
True: 控件显示->变量值
如果想按某种顺序读取文件夹中的各个文件,可以先用CFindFile遍历文件夹,然后将文件名(包括路径)存到vecor中,然后调用sort进行排序,排序函数自己写
字符串转换成整型 StrToInt,参数可以是Cstring
vc6在for条件中定义的变量,出了for循环,还有效,
vs2005在for条件中定义的变量,出了for循环,则无效了
Vs得到命令行参数CString strCmdLine = AfxGetApp()->m_lpCmdLine;
用命令行设置命令行参数时,不用加””号,会自动加上
getcwd得到当前打开的文件的路径,头文件#include <dir.h>