wly603

2012年4月11日

用一个宏定义FIND求一个结构体CTYPE里某个变量CNUM相对了CTYPE的编移量

摘要: 用一个宏定义FIND求一个结构体CTYPE里某个变量CNUM相对了CTYPE的编移量。如:stuct student { int a; char b[20]; double ccc; }则:FIND(student,a); //等于0FIND(student,b);//等于4#define FIND( struc, e ) (size_t)&(((struc*)0)- >e)(struc*)0----------表示将常量0强制转化为struc *型指针所指向的地址&(((struc*)0)- >e)--表示取结构体指针(struc*)0的成员e的地址,因为该结构体 阅读全文

posted @ 2012-04-11 10:38 wly603 阅读(257) 评论(0) 推荐(0) 编辑

C模拟实现C++的多态

摘要: 用c语言中的结构体模拟类,用函数指针模拟虚函数表。整个程序用于模拟C++中的多态性,即用基类访问派生类的函数。View Code // c语言模拟多态性#include "stdio.h"#include "stdlib.h"enum ShapeType{CIRCLE,SQUARE,RECTANGLE};//形状类型//建立虚函数表,2个虚函数typedef struct { void (*ShowShape)(); double (*CalArea)(int w);}vtable;//建立基类typedef struct{ vtable *vptr_b 阅读全文

posted @ 2012-04-11 10:36 wly603 阅读(1513) 评论(0) 推荐(0) 编辑

PeekMessage与GetMessage的对比

摘要: PeekMessage与GetMessage的对比相同点:PeekMessage函数与GetMessage函数都用于查看应用程序消息队列,有消息时将队列中的消息派发出去。不同点:无论应用程序消息队列是否有消息,PeekMessage函数都立即返回,程序得以继续执行后面的语句(无消息则执行其它指令,有消息时一般要将消息派发出去,再执行其它指令)。GetMessage函数只有在消息对立中有消息时返回,队列中无消息就会一直等,直至下一个消息出现时才返回。在等的这段时间,应用程序不能执行任何指令。(从他们的不同点上来看,PeekMessage函数有点像“乞丐行乞”,有你就施舍点,没有也不强求。GetM 阅读全文

posted @ 2012-04-11 10:31 wly603 阅读(209) 评论(0) 推荐(0) 编辑

OpenCV中Mat与IplImage和CvMat类型之间的相互转换

摘要: Mat类型较CvMat和IplImage有更强的矩阵运算能力,支持常见的矩阵运算(参照Matlab中的各种矩阵运算),所以将IplImage类型和CvMat类型转换为Mat类型更易于数据处理。Mat类型可用于直接存储图像信息,通过函数imread、imwrite、imshow等实现(与Matlab中的函数相似),似乎在某种程度上可以取代IplImage类型。(1)将IplImage类型转换到Mat类型Mat::Mat(const IplImage* img, bool copyData=false);默认情况下,新的Mat类型与原来的IplImage类型共享图像数据,转换只是创建一个Mat矩阵 阅读全文

posted @ 2012-04-11 10:30 wly603 阅读(752) 评论(0) 推荐(0) 编辑

Ubuntu11.04教育网源

摘要: 转自:http://hi.baidu.com/glc400/blog/item/4998ad50fceb62998c5430cb.html以下是ubuntu 10.10 教育网的源:sudo gedit /etc/apt/sources.list#成都电子科大的源,教育网推荐deb http://Ubuntu.uestc.edu.cn/ubuntu/ natty main restricted universe multiversedeb http://Ubuntu.uestc.edu.cn/ubuntu/ natty-backports main restricted universe mu 阅读全文

posted @ 2012-04-11 10:29 wly603 阅读(392) 评论(0) 推荐(0) 编辑

Ubuntu--中文输入法与回收站

摘要: 环境:ubuntu8.04.41、安装中文输入法 $sudo apt-get install scim scim-modules-socket scim-modules-table scim-pinyin scim-tables-zh scim-gtk2-immodule scim-qtimm $sudo im-switch -s scimhttp://hi.baidu.com/atoooo/blog/item/7a251713f5664dd7f6039e77.html2、Ubuntu在桌面显示回收站 前几天把回收站搞没了,甚是不爽。问了下google,找回来了!打开终端,$gconf-edi 阅读全文

posted @ 2012-04-11 10:26 wly603 阅读(220) 评论(0) 推荐(0) 编辑

Ubuntu---tftp的配置

摘要: 配置tftp服务的步骤:1、安装相关软件包:tftpd(服务端),tftp(客户端),xinetdsudo apt-get install tftpd tftp xinetd2、建立配置文件在/etc/xinetd.d/下建立一个配置文件tftpsudogedit/etc/xinetd.d/tftp在文件中输入以下内容:service tftp{socket_type = dgramprotocol = udpwait = yesuser = rootserver = /usr/sbin/in.tftpdserver_args = -s /tftpbootdisable = noper_sou 阅读全文

posted @ 2012-04-11 10:25 wly603 阅读(224) 评论(0) 推荐(0) 编辑

预编译头文件(precompiled header)

摘要: 今天调试程序,碰到一个错误:fatal error C1010: unexpected end of file while looking for precompiled header directive分析:工程头文件处理的错误。解决:1、Project Setting-> C/C++ -> Category(Precompiled header)-> not using Precompiled header2、如果使用的是Win32工程,可能就是错误文件没有包含:#include "stdafx.h" ,添加该包含即可。详细理解,参考:http://w 阅读全文

posted @ 2012-04-11 10:22 wly603 阅读(342) 评论(0) 推荐(0) 编辑

C语言之条件编译

摘要: 一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是只对一部分内容进行编译,这就是“条件编译”。 条件编译形式一为: #ifdef 标识符 程序段1 #else 程序段2 #endif 作用是:当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。 例如,在调试程序时,常常希望输出一些所需的信息,而在调试完成后不再输出这些信息。可以在源程序中插入以下的条件编译段: #ifdef DEBUG print ("device_open(%p)\n", file); #endif 如果在它的 阅读全文

posted @ 2012-04-11 10:20 wly603 阅读(890) 评论(0) 推荐(0) 编辑

2012年4月10日

(转)读取图像中任意点的像素值

摘要: 读取图像中任意点的像素值转自: http://www.cnblogs.com/skyseraph/archive/2011/04/04/2005025.html 阅读全文

posted @ 2012-04-10 21:39 wly603 阅读(360) 评论(0) 推荐(0) 编辑

导航