- 博客(13)
- 收藏
- 关注
原创 对Android ListView的理解
<br /><br />ListView是Android开发过程中较为常见的组件之一,它将数据以列表的形式展现出来。一般而言,一个ListView由以下三个元素组 成:1.View,用于展示列表,通常是一个xml所指定的。大家都知道Android的界面基本上是由xml文件负责完成的,所以ListView的界 面也理所应当的使用了xml定义。例如在ListView中经常用到的“android.R.layout.simple_list_item_1”等, 就是Android系统内部定义好的一个xml文件。<br
2011-04-05 21:50:00
575
原创 链表相关
Powered By Joewan.1.如何检查单向链表中是否有环?解决方案一:假如单向链表中有环,则尾部元素一定在环中(可以通过反证法证明)。形状如下:这样,我们只需按顺序遍历节点,用一个数组保存每一个节点地址。对于每一个节点做这样的操作,判断该节点地址是否已经存在数组中,如果已经存在则链表中存在环。如果链表中不存在环,该地址只可能指向新的节点或者为空。假设n个节点,解决方案一在最坏情况下的时间复杂度为:0 + 1 + 2 + 3 + …… (n - 3) + 1 = O(n2)。解决方案二:用两个指针遍
2011-03-09 23:02:00
536
原创 删除一个已知节点
<br />///////////////////////////////////////////////////////////////////////<br />// Delete a node in a list<br />// Input: pListHead - the head of list<br />// pToBeDeleted - the node to be deleted<br />////////////////////////////////////////////
2011-03-09 22:39:00
658
原创 开机自启动程序
昨天做了个brew开机自启动的demo,在此记下该程序的要点。BREW平台可以做到开机就自启动BREW 应用,这需要在MIF中做如下设置:Advanced Applet Information中:增加一个Notification:AEECLSID_SHELL设置Notififer:AEECLSID_SHELL设置Mask:NMASK_SHELL_INIT设置了开机自启动特性的应用在开机后会收到NMASK_SHELL_INITnotification,做为后台应用,需要处理此notification消息,
2011-02-25 10:00:00
779
原创 使字符串比较更自然
<br /> 最近在看《c专家编程》,上边的一个小启发,在此做个笔记,学习一下。<br /><br /><br />strcmp()函数用于比较两个字符串,但有点小纠结的是当两个字符串相等时,返回0。于是就有这样的代码出现:<br />if(!strcmp(str,"volatile")) return QUALIFIER;<br />这多少有点令人费解,相等时再取非,才符合我们的逻辑。<br /> <br />使用宏定义:<br /> <br />#define STRCMP(a,R,b) (st
2011-02-23 17:31:00
517
原创 Brew 后台程序
最近整了一个brew后台运行的demo,在此mark下要点,作为备忘。也提醒自己,不能荒废了时间!http://www.vckbase.com/document/viewdoc/?id=1469,主要看了这篇文章,才对后台有所了解,制作了demo。Examples 实例Assume the following applet structure: //假设如下应用结构。typedef struct _bgApp{ AEEApplet a; boolean m_bGoBg; // used
2011-02-22 15:10:00
970
原创 Linux IP设置
好久没写东西了,感觉越来越懒,遇到的问题没有总结出来,下次遇到同样的问题还要Google,那样既麻烦又浪费时间。以后还是要及时总结遇到的问题!网上找到的方法也要贴出来备忘!这次就将linux上设置ip写在这里吧,也是从网上搜的修改ip地址即时生效:# ifconfig eth0 192.168.1.102 netmask 255.255.255.0启动生效:修改/etc/sysconfig/network-scripts/ifcfg-eth0加入IPADDR=192.168.1.102NETMASK=255
2011-02-11 13:19:00
501
原创 找到的 base64编解码实现
好久没写了!// Base64Encode.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include #include #include #include #define BASE64_PAD64 '='char base64_alphabet[] = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I','J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R','S', 'T', 'U', 'V',
2010-12-16 15:51:00
962
原创 offsetof
刚才在论坛上又看到有人提出关于内存对齐的问题,又做了一番调查,从中学到一个宏定义:offsetof(),这个宏可以算出结构体中变量相对结构体首地址的偏移量。根据此,就可以知道内存对齐时,结构体中各个变量实际所占用的内存大小。 typedef struct _AAA{ char ch1; short int sValue; char ch2; int i; }AAA;
2010-11-24 16:13:00
494
原创 随机数
把以前在livespace上总结的关于随机数的内容放在这里。还得再记住个账号,麻烦!生成区间[a,b]之间的随机浮点数。 double randDouble(double a,double b) //这个是产生随机数函数,由于库函数功能有限,所以要自己封装一下 { return (rand()%(int)((b-a)*MAX_RANDOM))/(double)MAX_RANDOM+a; } 生成区间[m,n]之间的随机数。
2010-11-18 13:13:00
452
原创 一些关于C语言的总结
看到一哥们写的笔记,感觉不错就拿过来了。本想加到网摘里边,可捣腾了半天就没有发现加网摘的链接,最后还是写到自己的博客中吧!总结1:char *ch ="12345"; char ch[] = "12345"; char ch[] = {"12345"}; (puts /printf(%s))char ch[] = {‘1’,‘2’,‘3’,‘4’,‘5’,'/0'};(必须有单引号)scanf("%[^'/n']",a); gets(a);(空格也会录入,直到回车)总结2:sscanf()函数和sp
2010-11-14 23:10:00
617
原创 关于宏定义 # ##
临睡时看了个帖子,其中一哥们的回复很不错,在此mark下,学习了! 写道这里时,突然想起今天是光棍节,也顺便纪念下。#与##在宏定义中的--宏展开#include #define f(a,b) a##b#define g(a) #a#define h(a) g(a)int main(){ printf("%s/n", h(f(1,2))); // 12 printf("%s/n", g(f(1,2))); // f(1,2) return 0;}宏展开时:如果宏定义以#开头,不展开参数,
2010-11-11 23:48:00
560
原创 不积跬步,无以至千里
今天以这个标题来开始我的第一篇csdn博客,以此来记录自己学习到的点点滴滴。并鞭策自己不断的学习下去,不能再惶惶不可终日的混下去了,提高自己,改变生活! 刚才看了个面试题,关于指针的,mark下,为自己解惑! int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123; printf("after *(ptr++): *ptr=%d/n",*ptr); printf("line11%d,%d/n",*ptr,*(++ptr));
2010-11-10 16:09:00
683
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人