- 博客(5)
- 资源 (8)
- 收藏
- 关注
转载 多字节、UTF-8、Unicode之间的转换
// 多字节编码转为UTF8编码 bool MBToUTF8(vector& pu8, const char* pmb, int32 mLen) { // convert an MBCS string to widechar int32 nLen = MultiByteToWideChar(CP_ACP, 0, pmb, mLen, NULL, 0); WCHAR* lpszW = NULL; try { lpszW = new WCHAR[nLen]; }
2010-12-22 14:06:00
1486
转载 字符编码笔记:ASCII,Unicode和UTF-8
字符编码是计算机技术的基石,想要熟练使用计算机,就必须懂得一点字符编码的知识。1. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111。上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定。这被称为ASCI
2010-12-22 14:02:00
425
原创 线程间3种通信方式
线程间通信可以通过下列三种方法:1) 使用全局变量实现线程间通信:全局和静态变量是所有线程都可以访问的,所以要注意线程同步问题。MFC全局变量定义方法:方法1、自己定义一个全局变量头文件,在需要用引用的地方#include即可,或者用namespace XXX,直接XXX::变量名,引用变量。方法2、在.cpp类外面定义一个变量,在.h文件声明是extern 类型 变量名,在需要用引用的地方#include即可。2)使用消息实现线程间通信(这里主要是工作线程向窗体线程发消息,窗体线程有消息循环才可以接受消息
2010-12-22 10:14:00
2539
原创 指针问题集合
<br />1、不是所有指针都要delete,必须要从堆里new了内存才需要delete。<br />2、堆栈被破坏,delete出错,原因是指针所指向的内存已经被回收(如局部变量放在栈中,函数退出被系统自动回收)或者已经被释放(已经delete,重复delete)。<br />3、指针0xfeeefeee,指针已经被delete,内存已经被释放,所以指针指向未知内存。
2010-12-22 09:43:00
527
原创 VC系统托盘
一、托盘简介所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。二、托盘编程相关函数WINSHELLAPI BOOL WINAPI Shell_NotifyIcon( DWORD dwMessage,PNOTIFYICONDATA pnid);Returns TRUE if successful, or FALSE
2010-12-12 16:38:00
931
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人