
软件开发
文章平均质量分 59
FAR
勿以浮沙筑高台
展开
-
关于VC串口通信不能添加MSCOMM控件的解决办法
如果通过工程->增加到工程->component and controls无法正常添加;那么依然可以通过如图方法添加:即在软件对话框界面右键添加会发现MSCOMM控件已经注册过,可以正常添加;原创 2012-11-06 19:27:47 · 1762 阅读 · 0 评论 -
C函数调用与堆栈
这几天突然很想弄明白c函数调用时栈的使用情况,上网查了一下资料,自已也研究了一下,这篇blog就把我的所得记录下来吧。这篇blog试图讲明当一个c函数被调用时,一个栈帧(stack frame)是如何被建立,又如何被消除的。这些细节跟操作系统平台及编译器的实现有关,下面的描述是针对运行在Intel奔腾芯片上Linux的gcc编译器而言。c语言的标准并没有描述实现的方式,所以,不同的编译器,处理转载 2013-02-26 22:25:30 · 505 阅读 · 0 评论 -
SIZEOF()计算结构体的问题;
下面这样的一个结构体:struct stu1 { int i; char c; int j; };先介绍一个相关的概念——偏移量。偏移量指的是结构体变量中成员的地址和结构体变量地址的差。结构体大小等于最后一个成员的偏移量加上最后一个成员的大原创 2013-03-25 20:09:32 · 748 阅读 · 0 评论 -
VC基于对话框使用状态栏方式(state bar)
在类C***Dlg的定义中声明BOOL CreateStateBar();实现方式如下:BOOL C***Dlg::CreateStateBar(){int nTotWide; // total width of status barCRect rect;this->GetWindowRect(&rect);rect.top = rect.bottom- 25;原创 2013-12-29 16:18:57 · 1051 阅读 · 0 评论 -
VC关于使用了相关控件的程序出现:该内存不能为read的解决办法
解决方法:将工程->设置->下的Microsoft基础类设置为使用MFC作为静态DLL即可。 静态连接库就是把静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了。但是若使用 DLL,该 DLL 不必被包含在最终 EXE 文件中,EXE 文件执行时可以“动态”地引用和卸载这个与 EXE 独立的 D原创 2013-12-30 17:06:32 · 1185 阅读 · 0 评论 -
MFC句柄、指针、ID三者转换
win32直接操作的是句柄HANDLE,每个句柄就对应windows窗口,而vc对HANDLE进行类封装,间接操作的都是HANDLE,现在句柄只是类的一个成员变量。从句柄到指针 CWnd* pWnd=CWnd::FromHandle(hWnd); //a temporary CWnd object is created //and attached. pWnd->Attach(hW原创 2014-01-01 20:11:38 · 1027 阅读 · 0 评论