[MFC] CString小用例】的更多相关文章

在实际项目中需要对数字转成的字符串进行格式处理, 如: 50.500000,需要转化成50.5; 1.00000,需要转化成1, 对于编号而言要求都是4位,不足前面补0. 如1转成0001,222转成0222. 下面是实现方式: CString strTemp; //采样频率 strTemp.Format("%f", dPara.nSampleFrequency); strTemp.TrimRight("); //不要后面多余的0 strTemp.TrimRight(&quo…
原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/8191036.html 这里不知道会不会有人是真的新手 新新手 不知道怎么 如何建立一个MFC 工程 应该不会吧? 就是 打开VS 新建项目-MFC -MFC工程-点基于对话框 -和在静态库中使用 然后下一页将关于对话框取消了 不然会有两个对话框出来 然后点击完成 具体如下 步骤1:双击打开vs2013,进入起始页,按Ctrl+Shift+N组合快捷键(此时也可以一步步新建->项目操作),可以…
今天看acl源码的时候看到一个函数AllocConsole().百度一下感觉这个函数对于调试非常不错,当然对于MFC里面的调试信息,我都是用TRACE打印自己感兴趣的消息的,而且仅仅有在DEBUG里面才会打印.公布版本号不会,非常适合调试.今天看到这个函数,哪个版本号都能够打印.认为还是挺方便的. 感觉百度百科说的不错,就直接复制过来 AllocConsole 函数 为调用进程分配一个新的控制台. 语法 BOOL WINAPI AllocConsole(void); 參数 此函数没有不论什么參数…
  今天为了通过串口往单片机里写一个16进制字符去控制单片机的adc的起停,结果糊涂到把'\x01'误写成'\0x01',怎么也得不到意想的结果,程序员有时候会犯低级错误,有时候怎么也跳不出去,这时候通过写一个测试程序也许就能发现端倪. 下面说说正题. // get pointer to modifiable buffer at least as long as nMinBufLength LPTSTR GetBuffer(int nMinBufLength); // release buffe…
做界面时遇到需要从界面编辑框接受输入字符(用户名,密码之类),然后转为char *类型交给程序处理,记录一下找到的方法,主要参考https://blog.csdn.net/neverup_/article/details/5664733 编码方式 关于编码方式的说明如下,看了之后就理解了为什么需要转换. 开发是在vs2015下做的,默认字符集编码是Unicode,但在VC6.0等工程中,默认的字符集形式是多字节字符集(MBCS:Multi-Byte Character Set),这样导致在VC6…
问题描述 在项目中的一个文件路径存储在CString的对象中,这个对象在函数间传递了几次,当传递出来的时候,因为要使用到字符指针,所以GetBuffer获取字符串的指针,但是通过调试,发现,CString对象中的内容,在对此的传参(应该是拷贝构造)以后,内容发生了变化. 解决方法 这个问题已经很长时间了,今天我重新拿来验证,发现,还原不了当时的场景了.实乃遗憾啊.当时的解决方法应该是减少传参拷贝,或者使用指针.个人觉得,应该是对于CString类没有了解透彻. 题外闲谈 这个问题,已经过去很长时…
右键划线部分,打开属性,然后找到:配置属性-常规-字符集,选择:使用多字节字符集 然后,char *c;CString str; 就可以 strcpy(c,str); 如果觉得好用,请点个赞,谢谢!…
在某些应用场合下,我们可能需要在启动A进程启动时关闭进程B.MFC下该如何做呢?以下是我项目中用到的代码: int KillProcess(DWORD Pid) { //打开进程得到进程句柄 HANDLE hProcess=OpenProcess(PROCESS_ALL_ACCESS,FALSE,Pid); if(hProcess==NULL) { printf("OpenProcess error\n"); return 0; } //结束进程 if (TerminateProces…
知识点: CString转char*,string string转char*,CString char* 转CString,string 一.CString转char*,string //字串转换测试 CString CString1; std::string string1; CHAR* char1=NULL; string1=CString1.GetBuffer(); CString1.ReleaseBuffer(); char1=CString1.GetBuffer(); CString1…
Cstring m_filePath; string sname( CW2A( m_filePath.GetString())); http://blog.sina.com.cn/s/blog_530e99a40101127z.html m_filePath.Right(3)  可以直接取出字符串后三位,同理Left前三个. 用到了,记一下,时时笔记.…