- 博客(8)
- 资源 (1)
- 收藏
- 关注
转载 ON_COMMAND和ON_MESSAGE的区别
在MFC应用程序中传输的消息有三种类型:窗口消息、命令消息和控件通知。窗口消息(Window Message)一般与窗口的内部运作有关,如创建窗口、绘制窗口和销毁窗口等。通常,消息是从系统发送到窗口,或从窗口发送到窗口。若需要窗口消息的完全的列表,请参考M F C文档。命令消息命令消息一般与处理用户请求相关,当用户单击一个菜单项或工具栏时,命令消息产生,并被发送到能处理该请
2012-04-23 14:40:14
751
原创 MFC 程序最小化到任务栏托盘
---- 一、NOTIFYICONDATA结构 ---- NOTIFYICONDATA结构包含了系统用来处理托盘图标的信息,它包括选择的图标、回调消息、提示消息、图标对应的窗口等内容。其定义为: typedef struct _NOTIFYICONDATA { DWORD cbSize;
2012-04-23 14:37:14
1720
转载 算数、逻辑移位
比如一个有符号位的8位二进制数11001101,逻辑右移就不管符号位,如果移一位就变成01100110。算术右移要管符号位,右移一位变成10100110。逻辑左移=算数左移,右边统一添0逻辑右移,左边统一添0算数右移,左边添加的数和符号有关e.g:1010101010,其中[]位是添加的数字逻辑左移一位:010101010[0]算数左移一位:0101
2011-12-04 12:00:23
793
转载 C语言本身有输入和输出语句?
C语言本身并不提供输入输出语句,输入和输出操作是由函数来实现的。在C标准函数库中提供了一些输入输出函数,例如,printf函数和scanf函数。在使用他们时,千万不要误认为他们是C语言提供的“输入输出语句”。printf和scanf不是C语言的关键字,而只是函数的名字。C提供的函数以库的形式存放在系统中,它们不是C语言文本中的组成部分。不把输入输出作为C语言提供的语句的目的是使C语言编译系统简单,
2011-11-19 21:51:41
5521
转载 堆栈详解 常量字符串为什么位于静态存储区
一、程序的内存分配 1、栈区(stack):由编译器自动分配释放; 2、堆区(heap) :一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表; 3、全局区(静态区)(static):全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区
2011-11-07 17:34:33
1780
转载 const用法详解
看 到const关键字,很多人想到的可能是const常量,其实关键字const并不能把变量变成常量!在一个符号前加上const限定符只是表示这个符号 不能被赋值。也就是它的值对于这个符号来说是只读的,但它并不能防止通过程序的内部(甚至是外部)的方法来修改这个值(C专家编程.p21)。也就是说 const变量是只读变量,既然是变量那么就可以取得其地址,然后修改其值。看来const也是防君子不防小
2011-11-03 16:45:12
1594
转载 函数返回值—返回局部变量
看看下面的程序的输出: #include char *returnStr() { char *p="hello world!"; return p; } int main() { char *str; str=returnStr(); printf("%s\n", str);
2011-11-03 16:17:30
366
原创 为何a++不可以作为左值而++a能
a++的运算结果并不是a这个变量的引用,而是一个临时变量,其值为i的值,所以你无法进行以下运算: a++=5; 甚至编译器不允许你对一个临时变量重新赋值,上面的表达式会引起编译错误 。左值,说得通俗一点,就是可以出现在表达式左边的值(等号左边),可以被改变。 可以简单的这么理解(通过C++语法) 你看看前、后++分别是怎样重载的 比如A类中重载两个++吧
2011-11-03 16:06:01
1060
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人