- 博客(16)
- 资源 (4)
- 收藏
- 关注
原创 C++之MFC数据管理类CArray与CPtrList
MFC的数组类可以存放任何数据类型,MFC数组类创建的对象可以根据需要动态地增大或减小,数组的起始下标是0,而上限可以是固定的,也可以随着元素的增加而增加,数组在内存中的地址仍然是连续分配的。在使用之前,最好使用SetSize建立它的大小和为它分配内存。如果不使用SetSize,则为数组添加元素就会引起频繁地重新分配和拷贝。频繁地重新分配和拷贝不但没有效率,而且导致内存碎片。
2017-08-28 21:54:57
3259
原创 C++之不同进程消息通信
不同进程间消息传递可通过注册Windows消息和用户自定义消息实现:一. 注册Windows消息方式 1、定义消息const UINT WM_MESSAGE_PROCESS = ::RegisterWindowMessage(_T("Message_Process")); // 接收方const UINT WM_MESSAGE_PROCESS = ::R
2017-08-27 11:24:27
2152
转载 转载VC中SendMessage和PostMessage发送消息(不同进程复杂参数传递)
一、函数功能该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。而函数PostMessage不同,将一个消息寄送到一个线程的消息队列后立即返回。二、函数原型SendMessage函数的原型为 LRESULT SendMessage( HWND hWnd, UINT Msg, WPARAM wPar
2017-08-27 11:00:04
1039
原创 C++之MFC系统图标任务托盘显示
MFC支持将任务图标放在系统任务托盘中显示,通过NOTIFYICONDATA结构体实现,下面具体阐述其实现方法: 1.定义结构体变量 NOTIFYICONDATA m_NotifyIcon; 2.结构体成员变量赋值 m_NotifyIcon.cbSize = sizeof(NOTIFYICONDATA); // 结构大小 m_NotifyIcon
2017-08-26 21:03:10
1839
1
原创 C++内存管理之结构体内存释放
C++中使用new和delete申请和释放内存空间,二者是成对出现的,缺一不可。使用new开辟的内存空间位于堆中,只能通过delete释放,这与局部变量不同,局部变量存储在栈中,变量生存周期结束后其内存也随之释放。 结构体中成员变量中存在指针的,其内存释放遵循从里向外的原则,即先释放成员变量的内存,然后在释放结构体指针。由于C++中允许结构体中使用构造函数和析构函数,构造函数对成员数据进行初
2017-08-23 21:27:29
25659
原创 VS2010调用帮助文档
1) 添加HtmlHelp.H头文件和HtmlHelp.lib库。在项目--属性--连接器--输入的附加依赖项中加入HtmlHelp.lib库文件,然后在连接器--常规--附加库目录中加入HtmlHelp.lib的目录位置。然后再工程中加入头文件#include “HtmlHelp.h”。 2)开始编写程序。 TCHAR szPath[ MAX_PATH ] = {0};
2013-11-16 18:25:04
1328
原创 VS2010下解决Active X运行容器
VS2010下需要手动配置运行容器: 1) 获取解决方案,该文件存放在安装路径下VS10/Samples/2052/VC2010samples.zip(解压)/C++/MFC/ole/TstCon。 2) 打开解决方案,分别设置两个解决方案为启动项目进行编译,编译完成后在Debug文件夹下生成一个exe文件。 3) 设置具体工程,在项目--属性--
2013-11-16 18:03:48
789
原创 error LNK2019: 无法解析的外部符号 __imp__InitCommonControlsEx@4,该符号在函数 _WinMainN@16 中被引用
Windows提供了一系列的win32控件,这些控件的可执行代码都放在comctl32.dll中,要使用通用控件,必须加载comctl32.dll。InitCommonControls或InitCommonControlsEx来初始化控件。这两个函数都是动态链接库comctl32.dll中的函数,两个函数的原型如下: void InitCommonControls(V
2013-11-08 20:30:42
4492
原创 I2C总线的软件程序模拟—基于Niso II处理器
I2C总线的软件程序模拟—基于Niso II处理器1、I2C的特点 I2C总线最主要的优点是其简单性和有效性。由于接口直接在组件之上,因此I2C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可高达25英尺,并且能够以10Kbps的最大传输速率支持40个组件。I2C总线的另一个优点是,它支持多主控(multimastering),其中任何能够进行发
2012-11-22 21:13:17
864
原创 virtualBox下ubuntu与win7共享文件
本文主要是阐述虚拟机virtualbox上安装ubuntu11.10后与win7共享文件夹的一些设置方法,以及出现一些问题的解决办法。1.首先要安装ubuntu11.10,具体安装步骤不在叙述。2.安装增强功能包。安装好Ubuntu后,运行Ubuntu并登录。然后在VirtualBox的菜单里选择"设备(Devices)" -> "安装 增强功能包(Install Guest Add
2012-11-21 17:36:25
1314
原创 NiosII 的timestamp的作用
NiosII 的timestamp是计算函数时间的很好的工具,提供时间戳服务,可以用来测试函数的执行时间或是延时函数的准确性等。不过先要在BSP中设置好,NISO9.0和之前的版本在system library properties中设置,选择一个定时器作为timestamp clock。
2012-11-19 20:30:06
762
转载 NIOS II 软核中EPCS配置芯片的存储操作
NIOS II软核中EPCS配置芯片的存储操作EPCS4配置芯片除了存储FPGA配置信息和NIOS II程序外,还有很多存储空间剩余未使用,可以用来做用户配置信息存储。ALTERA提供的HAL函数来调用EPCS相关的函数,在“altera_avalon_epcs_flash_controller.c”函数(路径为:\\altera\72\ip\sopc_builder_ip\alter
2012-11-06 11:37:08
2653
原创 FPGA管教分配问题及注意事项
FPGA管教分配问题及注意事项1)SOPC中已经添加PIO口,但是未接输出或是输入口时,要将其端口置为三态。2)有些管脚是编程管角,需要将其改为一般IO口。在device-> device and Pin Options -> Dual-Purpose Pins中进行设置。
2012-11-06 11:30:14
1476
原创 grub loading error 17..的解决方案
通常这种错误一般是出现在你的电脑装了windows和ubutu linux的双系统,在windows的环境下,你做出修改,如删除或是格式化了linux的分区,导致系统在开机的时候,找不到linux的引导程序,windows中的mbr也出现损坏,出现上述的错误。 出现这种问题后,有很多的解决办法,我只讲一下自己实际操作的一种比较简单的方法。 假定你的电脑上没有光驱,那么你可以参照
2012-11-03 11:32:31
9026
原创 LWIP中非阻塞模式accept解决方案
LWIP中socket是阻塞模式,如何在NIOS II中实现非阻塞模式的socket,通过fcntl等改变socket模式无法实现,可以采用多线程和定时器相结合的方式实现非阻塞模式的accept。1)创建线程(任务),一个是主任务,另外一个是accept等待的任务(里面只有一个accept函数的循环运行)。2)建立定时器中断,定时间隔自己选择,并编写中断服务程序。3)accept函数返
2012-03-12 15:54:53
6481
转载 常用集成电路功能简介 AD
常用集成电路功能简介 AD AD1380JD 16位 20us高性能模数转换器(民用级)AD1380KD 16位 20us高性能模数转换器(民用级)AD1671JQ 12位 1.25MHz采样速率 带宽2MHz模数转换器(民用级)AD1672AP 12位 3MHz采样速率 带宽20MHz单电源模数转换器(工业级)AD1674JN 12位 100KHz采样
2011-05-18 20:59:00
3654
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人