摘要: 今天在使用vs2008+MFC时候,使用editControl的replacesel(“”)发生报错。如下::不能将参数1从“const char []”转换为“LPCTSTR”其解决方案就是, 在项目属性里面找到项目默认值下面的字符集, 将其换为:使用多字节字符集就ok了。原因:typedefLPCTSTRLPTSTR ;#ifndef _UNICODE typedef TCHAR char; #else typedef TCHAR wchar_t; #endif typedef LPTSTR const TCHAR*;看到一篇很好的讲字符集(charset)转载过来。。感谢freeb... 阅读全文
posted @ 2013-12-17 15:23 滴水瓦 阅读(3659) 评论(0) 推荐(0) 编辑
摘要: 在软件开发中,不可不免的会使用到hash表,hash表的优点这里就不说了,以下介绍一个hash表的C实现,uthash是用宏实现的,使用的时候非常方便,只用包含uthash.h即可。Uthash的三个数据结构:typedef struct UT_hash_bucket { struct UT_hash_handle *hh_head; unsigned count; unsigned expand_mult;} UT_hash_bucket;UT_hash_bucket作用提供根据hash进行索引。typedef struct UT_hash_table { UT_hash_b... 阅读全文
posted @ 2013-10-11 11:56 滴水瓦 阅读(6136) 评论(1) 推荐(0) 编辑
摘要: static的作用:1.先来介绍它的第一条也是最重要的一条:隐藏 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c.下面是a.c的内容: char a = 'A'; // global variable void msg() { printf("Hello\n"); } 下面是main.c的内容: int main(void) { ... 阅读全文
posted @ 2013-01-24 22:45 滴水瓦 阅读(618) 评论(0) 推荐(0) 编辑
摘要: sizeof(object) 大家都知道 得到object的长度以字节为单位。那么我们这样做几个实验: char info[]="hello"; char *p=info; sizeof(info); sizeof(p);这些简单的当然很多人都知道,第一个返回的是6 第二个返回的是char* 类型在机器上的字节数(在我的64windows版本上这个值是4);然后有意思的事情就发生了: char info[]="hello" 这句话,十分的熟悉吧。其等价于 char info[5]="hello" 吗?是不是有点疑惑,其实在编译阶段 c 阅读全文
posted @ 2013-01-24 22:42 滴水瓦 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 看一些程序的时候老是有“#ifdef __cplusplusextern "C" {#endif”的定义,搞搞清楚是怎么回事:Microsoft-Specific Predefined Macros__cplusplus Defined for C++ programs only.意思是说,如果是C++程序,就使用extern "C"{而这个东东,是指在下面的函数不使用的C++的名字修饰,而是用C的The following code shows a header file which can be used by C and C++client app 阅读全文
posted @ 2013-01-24 22:07 滴水瓦 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 从概念上讲。指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变。而引用是一个别名,它在逻辑上不是独立的,它的存在具有依附性,所以引用必须在一开始就被初始化,而且其引用的对象在其整个生命周期中是不能被改变的(自始至终只能依附于同一个变量)。在C++中,指针和引用经常用于函数的参数传递,然而,指针传递参数和引用传递参数是有本质上的不同的:指针传递参数本质上是值传递的方式,它所传递的是一个地址值。值传递过程中,被调函数的形式参数作为被调函数的局部变量处理,即在栈中开辟了内存空间以存放由主调函数放进来的实参的值,从而.. 阅读全文
posted @ 2012-12-15 23:00 滴水瓦 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 1. 建立省市县行政区划代码(截止2010年12月31日)数据表CREATE TABLE xzqhdm ( _id INTEGER PRIMARY KEY, code NUMERIC, region TEXT, parent_code NUMERIC);parent_code指上一级的行政区划代码,省属于最上级的行政单位,设置它的区划代码为999999。insert into xzqhdm values(NULL, 110000, "北京市", 999999);insert into xzqhdm values(NULL, 110100, "市辖区", 阅读全文
posted @ 2012-12-07 18:04 滴水瓦 阅读(1374) 评论(3) 推荐(1) 编辑
摘要: Adapter是AdapterView视图与数据之间的桥梁,Adapter提供对数据的访问,也负责为每一项数据产生一个对应的View。其作用如下图所示: Adapter的继承结构 其中详细的讲解了一个自定义BaseAdapter的demo,对于getView方法解解释比较好。其实param2 converView就是一个带返回的现实在列表中的一个item,而这个view,可以是一个view的tag,其中可以封装一组组件,比如使用一个自定义的:public... 阅读全文
posted @ 2012-11-29 22:08 滴水瓦 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 一直在应用程序中使用的Activity都是黑色不透明的背景,很少遇到那些花哨的Activity,但是花哨归花哨,有些Activity一定要实现半透或者全透效果,比如我的一张动态壁纸的设置界面,这张设置界面是一张Activity页面,我在设置界面进行壁纸设置的时候,我希望看到我的壁纸已经作出相应的改变,为此就需要实现Activity的半透或者全透的效果了,那么如何在Android中实现Activity半透明效果或者全透明效果?Activity实现全透明效果 Activity实现全透明效果方法,我们可以从sdk的帮助文章中找到方法,系统已经给我们做好了全透效果的style,所以我们只需在A... 阅读全文
posted @ 2012-11-27 19:53 滴水瓦 阅读(3890) 评论(0) 推荐(0) 编辑
摘要: AlarmManager简介及使用场景:AlarmManager的使用机制有的称呼为全局定时器,有的称呼为闹钟。通过对它的使用,它的作用和Timer有点相似。都有两种相似的用法:(1)、在指定时长后执行某项操作(2)、周期性的执行某项操作AlarmManager对象配合Intent使用,可以定时的开启一个Activity,发送一个BroadCast,或者开启一个Service.AlarmManager 包含的主要方法:void cancel(PendingIntent operation) // 取消已经注册的与参数匹配的定时器void set(int typ... 阅读全文
posted @ 2012-11-15 16:26 滴水瓦 阅读(729) 评论(0) 推荐(0) 编辑