菜de园子
我的园子,我做主!
摘要: 在 NIO 库中,所有数据都是用缓冲区处理的。在读取数据时,它是直接读到缓冲区中的。在写入数据时,它是写入到缓冲区中的。任何时候访问 NIO 中的数据,都是将它放到缓冲区中。缓冲区实质上是一个数组。通常它是一个字节数组,但是也可以使用其他种类的数组。但是一个缓冲区不仅仅是一个数组。缓冲区提供了对数据的结构化访问,而且还可以跟踪系统的读/写进程。 buffer其实只是一个美化了的数组。状态变量跟踪数据的状态情况使buffer可以自己管理数据资源 position: 其实是指从buffer读取或写入buffer的下一个元素位置。比如,已经写入buffer 3个元素那那么position就是指向第4 阅读全文
posted @ 2011-04-25 16:54 candycaicai 阅读(2560) 评论(0) 推荐(1) 编辑
摘要: 最近写android的应用程序,都是java编程的思想,和C++还是有所不同的,主要是继承上有所不同,其中对extends与implements的理解如下:1、extends是子类继承父类的关键字,继承父类之后,可以使用父类的方法,也可以复写父类的方法。implements是一个类实现一个或者多个接口。接口的方法一般是空的,按我做C++之前的理解就是纯虚函数,需要重新写方法才能使用。如果implements一个接口就必须实现这个接口的所有方法。2、java和C++不同,不支持多重继承,但是可以用接口实现,也就是说extends只能继承一个类,而implements可以实现一个或多个接口。例如: 阅读全文
posted @ 2011-04-20 13:48 candycaicai 阅读(10930) 评论(0) 推荐(0) 编辑
摘要: 接触android的应用开发已经有一个多月了,对于控件的使用,比较容易掌握,通过xml配置布局,在主程序中建立对应的控件,设置监听,完成用户动作,我说的也只是入门级的水平,本人也是入门级菜鸟,哈哈!对我而言,初学的难度在于handler的使用上,所以在这里详细介绍一下! Handler从字面上看就是一个句柄,用于负责发送和处理相应消息,它包括两种队列:线程队列和消息队列,分别通过post和sendmessage来实现。 使用Handler的流程:1、创建Handler对象,可以直接使使用Handler无参构造函数,创建对象,也可以继承handler类,重写HandlerMessage函数,然. 阅读全文
posted @ 2011-04-19 11:27 candycaicai 阅读(2671) 评论(1) 推荐(0) 编辑
摘要: 在公司里做东西都很杂,自己的方向也不太明确,C,C++,java都得用上,随着智能手机的发展,android的应用突飞猛进,但是好东西还是没几个,现在公司在android应用这么方面需求也多了起来,把我分配到了开发android程序应用的队伍里,其实我还是想做C和C++的东西,几番犹豫,还是决定好好看android开发吧,计算机语言都是相同的,从彼语言看此语言,都会有收获的,但是我不会放弃之前对C和C++开发的经历,多学点东西没坏处,打算努力学习,把成长的点点滴滴记录下来,为的只是积累帮助自己,帮助需要帮助的it同仁! 阅读全文
posted @ 2011-04-18 11:40 candycaicai 阅读(462) 评论(2) 推荐(0) 编辑
摘要: 信号(signal):通知进程已发生某种情况的技术,例如:,某个进程执行了除法操作,其除数为0,则将名为SIGFPF(浮点异常)的信号发送给该进程,进程如何处理信号有三种选择:1.忽略该信号,有些信号表示硬件异常,例如,除以0或者范围进程地址空间以外的单元等,因为这些异常产生的异常后果不确定,所以不推荐使用这种处理方式。2.按照系统默认方式处理,对于除以0的情况,系统默认是终止该进程。3.提供一个函数,信号发生时则调用该函数,扑捉改信号,使用这种方式,我们只要调用我们自己为此设定的函数,就能知道什么时候产生了信号,并做好处理方式。下面的情况可以产生Signal:1. 按下CTRL+C产生SIG 阅读全文
posted @ 2011-03-10 16:22 candycaicai 阅读(751) 评论(0) 推荐(0) 编辑
摘要: 程序和进程是操作系统中的重要概念,程序是可运行的一组指令,程序以二进制代码的形式保存在存储设备中。操作系统运行程序后,该程序在内存中的映像就是进程,进程是活动的程序。1、程序 程序是指一组指示计算机或其他具有信息处理能力设备每一步动作的指令。Linux系统下的应用程序主要由两种特殊类型的文件代表,分别是可执行文件和脚本程序。可执行文件是能够被计算机直接执行的程序,相当于Windows系统中的exe文件。使用C和C++语言设计的程序编译后即是可执行文件。Linux系统不要求可执行文件使用特定的扩展名,文件是否能被执行由文件的系统属性来决定。系统可执行文件存放在:/binroot可执行文件存放在. 阅读全文
posted @ 2011-03-07 16:03 candycaicai 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 《unix环境高级编程》的书到了,拿来就开始看,发现第一个ls的程序就卡壳了。说是少了apue.h的头文件,到网上一查,人家说在前言里有源码的下载地址,www.apuebook.com,我很快下了代码,解压后打开在apue.2e中有个include 的文件夹,我在里面找到了apue.h的头文件,编译的时候可以参看gcc的手册,如果代码中没有头文件,可以加头文件的参数及其位置,如下:$ gcc ls1.c -I ../include/(gcc参数手册讲的很详细),这时候编译,又出错了,说是:/tmp/cclCQtbS.o: In function `main':ls1.c:(.text+ 阅读全文
posted @ 2011-03-02 16:34 candycaicai 阅读(1799) 评论(0) 推荐(0) 编辑
摘要: 今天边看书,边打算尝试一下,在ubuntu下写个最小的程序试试。建立一个hello.c的文件。1 #include <stdio.h> 2 int main(void)3 {4 printf("hello!\n");5 printf("hello world from process id is %d\n",getpid());6 return 0;7 }但是在终端用gcc 编译,去说没有头文件,之后才发现是因为没有装c的标准库的原因。安装 g++, sudo apt-get install g++Ubuntu就安裝g++后,stdio.h就 阅读全文
posted @ 2011-03-01 18:05 candycaicai 阅读(2689) 评论(0) 推荐(0) 编辑
摘要: 迅雷开放了下载引擎,还有源代码,还是值得学习一下的。 相关信息都在http://xldoc.xl7.xunlei.com/ 我下载了demo的代码,还不错。 阅读全文
posted @ 2011-03-01 10:16 candycaicai 阅读(642) 评论(0) 推荐(0) 编辑
摘要: 首先安装samba: sudo apt-get install samba我的是ubuntu10.04 ,没有文件浏览时候的地址栏,所以需要更改一些设置:ALT+F2打开 “运行应用程序”输入gconf-editor切换到/apps/nautilus/preferences/勾选always_use_location_entry设置成功后,打开位置->网络,在地址栏,转到的位置打smb://*.*.*.*把需要访问的服务器地址打上,例如smb://192.168.16.2就可以访问你的局域网服务器了。安装samba是为了设置共享用的,还不知道怎么设,等用到的时候,在写下来·&# 阅读全文
posted @ 2011-02-25 18:25 candycaicai 阅读(1877) 评论(0) 推荐(0) 编辑