摘要: 没啥技术含量,只不过是在没事干,就把这个也记上,Windows下好像有这个api函数,但是在wince下用不了,所以还得自己封装一个。大体代码如下: 阅读全文
posted @ 2010-09-10 16:44 天堂大鸟 阅读(4943) 评论(3) 推荐(0) 编辑
摘要: #include <iostream>using namespace std;bool IsRound(int year){ if((year%100)&&(year%4==0)) return 1; if((year%100==0)&&(year%400==0)) return 1; return 0;}int main() { int n; int ... 阅读全文
posted @ 2010-09-06 16:09 天堂大鸟 阅读(5743) 评论(0) 推荐(0) 编辑
摘要: 刷以第一块板子idea6410时只需按照板子自带的用户手册即可,比较简单。第二块devkit8000手册介绍的非常不详细,自己摸索半天,要点就是进入flash management 先要format format完了之后一定要重启一下板子才能完成所有的format工作,否则就会出现系统安装不完整,导致一直停留在4个颜色的校正画面上。参考信息:http://www.embedinfo.com/cfo... 阅读全文
posted @ 2010-08-30 11:09 天堂大鸟 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 显示位图和SVG图 先打包,在加载 ,最后绘画 打包位图资源 : 先把图片放到指定文件 夹,然后把大包脚本加入到程序 的mmp文件中(添加在end前的最后)START BITMAP graphic_bmp.mbmHEADERTARGETPATH \resource\appsSOURCEPATH ..\picture\bmpSOURCE c24 image1.bmpSOURCE c24 image2... 阅读全文
posted @ 2010-08-25 09:49 天堂大鸟 阅读(778) 评论(0) 推荐(0) 编辑
摘要: 本程序基于socket网络通信技术开发,用的是tcp/ip协议。只能用于局域网,没有穿透外网的功能。程序比较简单,应用的全部是基础的编程知识,所以适合想要了解网络编程或者入门的人来参考。本程序主要实现的功能如题目所示,其中扩展了CRichEditCtrl类,采用了CRichEditCtrlEx类库,为网上搜集,这个类库最大的特色是可以在空间上显示传送过来的文件,双击会调用系统自身的关联程序来运行文件。程序截图如下: 没有放太多心思在界面上,所以稍显简陋。CRichEditCtrlEx扩展类下载地址:http://files.cnblogs.com/lebronjames/CRichEditCt 阅读全文
posted @ 2010-08-16 21:56 天堂大鸟 阅读(5651) 评论(12) 推荐(1) 编辑
摘要: 进程中线程同步的四种常用方式:1、临界区(CCriticalSection)当多个线程访问一个独占性共享资源时,可以使用临界区对象。拥有临界区的线程可以访问被保护起来的资源或代码段,其他线程若想访问,则被挂起,直到拥有临界区的线程放弃临界区为止。具体应用方式:1、定义临界区对象CcriticalSection g_CriticalSection;2、在访问共享资源(代码或变量)之前,先获得临界区对... 阅读全文
posted @ 2010-08-11 23:15 天堂大鸟 阅读(62584) 评论(1) 推荐(0) 编辑
摘要: 第三章 栈、队列和数组一、栈栈是只能在一端进行插入和删除的线性表。(别看只是个定义,非常重要,已经道出了运算方法:只能在一端插入和删除。)栈的特征:后进先出,先进后出。插入和删除元素的一端称为栈顶。(说明了我们在栈顶操作)另一端称为栈底。插入元素和删除元素的操作称为入栈和出栈。1.顺序栈结构:(top总是指向数组最后的元素,比如data[n],而不是前面)#define MAXSIZE 100ty... 阅读全文
posted @ 2010-08-11 16:22 天堂大鸟 阅读(4541) 评论(0) 推荐(0) 编辑
摘要: 注: m_edit1代表ID为IDC_EDIT1的CEdit控件的control类型的变量 m_richedit1代表ID为IDC_RICHEDIT1的CRichEditCtrl控件的control类型的变量1.设置edit只读属性 方法一: m_edit1.SetReadOnly(TRUE); 方法二: ::SendMessage(m_edit1.m_hWnd, EM_SETREADONLY, ... 阅读全文
posted @ 2010-08-08 15:17 天堂大鸟 阅读(1218) 评论(0) 推荐(0) 编辑
摘要: server端: #include <WINSOCK2.H>#include <stdio.h>#pragma comment(lib,"ws2_32.lib")void main(){ //创建套接字 WORD myVersionRequest; WSADATA wsaData; myVersionRequest=MAKEWORD(1,1); int err; err=W... 阅读全文
posted @ 2010-08-06 21:53 天堂大鸟 阅读(27033) 评论(1) 推荐(1) 编辑
摘要: 在Visual C++.NET2005中,默认的字符集形式是Unicode,但在VC6.0等工程中,默认的字符集形式是多字节字符集(MBCS:Multi-Byte Character Set),这样导致在VC6.0中非常简单实用的各类字符操作和函数在VS2005环境下运行时会报各种各样的错误,这里总结了在Visual C++.NET2005环境中Unicode字符集下CString和char *之... 阅读全文
posted @ 2010-08-06 12:37 天堂大鸟 阅读(825) 评论(0) 推荐(0) 编辑
摘要: BOOL TransmitFile( SOCKET hSocket, HANDLE hFile, DWORD nNumberOfBytesToWrite, DWORD nNumberOfBytesPerSend, LPOVERLAPPED lpOverlapped, LPTRANSMIT_FILE_BUFFERS lpTransmitBuffers, DWORD dwFlags ); 参数: hS... 阅读全文
posted @ 2010-08-05 18:03 天堂大鸟 阅读(5033) 评论(0) 推荐(1) 编辑
摘要: //文件传送线程//服务器发送文件,客户端发送文件消息UINT threadSendFile(LPVOID pvar){ CDlgSendMessage *pDlg = (CDlgSendMessage *) pvar;CFile m_fSendfile;m_fSendfile.Close();if (!m_fSendfile.Open(pDlg->m_sendfilepath, CFile... 阅读全文
posted @ 2010-08-05 16:55 天堂大鸟 阅读(3424) 评论(0) 推荐(0) 编辑
摘要: 我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明: 有下面的两个类: 代码 的输出结果是:这个很简单,非常好理解。 但是,如果把类ClxBase析构函数前的virtual去掉,那输出结果就是下面的样子了: 也就是说,类ClxDerived的析构函数根本没有被调用!一般情况下类的析构函数里面都是释放内存资源,而析构函数不被调用的话就... 阅读全文
posted @ 2010-07-31 17:05 天堂大鸟 阅读(408) 评论(1) 推荐(0) 编辑
摘要: c++中的explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?如果c++类的构造函数有一个参数,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象,如下面所示:在上面的代码中编译器自动将整型转换为MyClass类对象,实际上等同于下面的操作:MyClass temp(10);M... 阅读全文
posted @ 2010-07-29 22:12 天堂大鸟 阅读(343) 评论(0) 推荐(0) 编辑
摘要: 1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。2.sizeof是算符,strlen是函数。3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。sizeof还可以用函数做参数,比如:short f();printf("%d\n", sizeof(... 阅读全文
posted @ 2010-07-27 19:07 天堂大鸟 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 要弄懂这个问题,首先你得知道静态和动态指的是什么。个人觉得卡耐基上的解释很经典: “The wordstaticrefers to things that happen at compile time and link time when the program is constructed—as opposed to load time or run time when ... 阅读全文
posted @ 2010-07-18 15:11 天堂大鸟 阅读(5858) 评论(1) 推荐(0) 编辑
摘要: 1. 以下三条输出语句分别输出什么?[代码]答:分别输出false,false,true。str1和str2都是字符数组,每个都有其自己的存储区,它们的值则是各存储区首地址,不等;str3和str4同上,只是按const语义,它们所指向的数据区不能修改。str5和str6并非数组而是字符指针,并不分配存储区,其后的“abc”以常量形式存于静态数据区,而它们自己仅是指向该区首... 阅读全文
posted @ 2010-07-18 11:18 天堂大鸟 阅读(1199) 评论(0) 推荐(1) 编辑
摘要: 用AfxBeginThread启动线程,线程的执行函数有两种定义的方法:<!--[if !supportLists]-->1. <!--[endif]-->全局函数:UINT threadMessageBoxAdapter( LPVOID lParam );<!--[if !supportLists]-->2. <!--[endif]-->静态成员函... 阅读全文
posted @ 2010-07-06 19:43 天堂大鸟 阅读(2294) 评论(0) 推荐(0) 编辑
摘要: memset目录[隐藏]功 能用 法程序例memset函数详细说明  [编辑本段]功 能  将s所指向的某一块内存中的每个字节的内容全部设置为ch指定的ASCII值,  块的大小由第三个参数指定,这个函数通常为新申请的内存做初始化工作,  其返回值为指向S的指针。[编辑本段]用 法  void *memset(void *s, int ch, unsigned n);[编辑本段]程序例  #inc... 阅读全文
posted @ 2010-07-04 21:20 天堂大鸟 阅读(46942) 评论(3) 推荐(5) 编辑
摘要: 使线程同步  在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作。更多的情况是一些线程进行某些处理操作,而其他的线程必须对其处理结果进行了解。正常情况下对这种处理结果的了解应当在其处理任务完成后进行。  如果不采取适当的措施,其他线程往往会在线程处理任务结束前就去访问处理结果,这就很有可能得到有关处理结果的错误了解。例如,多个线程同时访问同一个全局变量,如果都是读取操作,则不... 阅读全文
posted @ 2010-07-02 00:15 天堂大鸟 阅读(6046) 评论(4) 推荐(2) 编辑