- 博客(26)
- 资源 (2)
- 收藏
- 关注
原创 基于S3C6410的U-boot启动代码分析(一)
预备知识可执行文件由许多链接在一起的对象文件组成。对象文件有许多节,如文本、数据、init 数据、bss等。这些对象文件都是由一个称为 链接器脚本(*lds)的文件链接并装入的。这个链接器脚本的功能是将输入对象文件的各节映射到输出文件中;换句话说,它将所有输入对象文件都链接到单一
2011-07-09 13:08:07
4430
原创 在Fedora 14 搭建Android 开发环境
经过一天的折腾,终于在Fedora 14上配置好了Android开发环境,并在Android模拟器上成功运行第一个Hello Fedora 程序。由于Fedora 14 自带的Eclipse 版本为3.6.1,而此版本安装Android插件总是失败,于是自己下载Eclipse 3.5.1 并进行配置。下面记录以下具体实现步骤:1、 首要步聚下载 Android SDK for Linux 下载地址为: http://androidappdocs.appspot.com/sdk/index.htm
2010-11-13 23:39:00
3383
原创 C/C++程序员需要注意的11个知识点(转)
下面的这些要点是对所有的C++程序员都适用的。我之所以说它们是最重要的,是因为这些要点中提到的是你通常在C++书中或网站上无法找到的。如:指向成员的指针,这是许多资料中都不愿提到的地方,也是经常出错的地方,甚至是对一些高级的C++程序员也是如此。 这里的要点不仅仅是解释怎样写出更好的代码,更多的是展现出语言规则里面的东西。很显然,它们对C++程序员来说是永久的好资料。我相信这一篇文章会使你收获不小。 首先,我把一些由不同层次的C++程序员经常问的问题归到一起。我惊奇的发现有很多是
2010-10-23 23:33:00
1008
原创 成为一名优秀程序员所需要知道的那些事(转载)
导读:编程虽是复杂活,但成就优秀程序员的很多因素和我们在学校中最早学到的相差无几。 1. 懂得分享。尽可能使用开源,并且当你有能力的时候,要对其有所贡献。聚全社会之智慧,胜过某些“大”公司之短视。 2. 公平竞争。尝试其他技术、框架、方法和观点。不要总以为只有你的选择才是可行的。别的选择也有可能比你的要强得多。要以开放的心态,来检验其他人的选择。 3. 不要攻击他人。像第2条所说的,不要仅仅因为别人恰巧使用.Net、Java或PHP就去攻击他们(我在这方面有一次教训)。有时,它们或许要
2010-10-23 23:24:00
734
原创 C++的类
C++程序中类概念的目标就是为程序员提供一种建立新类型的工具,使这些新类型的使用能够像内部类型一样方便。我们设计一个新的类型,是为了给某个内部类型中没有直接对应物的概念提供一个定义。而定义一个新类型的基本思想就是将实现中那些非必然的细节(如用于存储该类型的对象所采用的数据的布局),与那些对这个类型的正确使用至关重要的性质(如能够访问其中数据的完整的函数列表)区分开来。 1、类 一个类就是一个用户定义类型。在一个类中声明的函数叫做类的成员函数,这种函数只能通过适当类型的特定变量,采用标准的结构成员访问语法
2010-10-20 19:59:00
640
原创 指向函数的指针
程序员对一个函数只能够做两件事:一是调用它,二是获取它的地址。通过获取一个函数的地址而得到的指针,可以在后面用于调用这个函数。 例如: void error(string s) {/* ...... */} void (*efct)(string); //指向函数的指针。 void f() { efct = &error; //efct指向函数error efct("error"); //通过函数指针调用error函数 } 在上面的例子中,编译器
2010-10-20 05:34:00
613
原创 C ++ 中的函数
1、函数的声明 在C和C++的程序里,完成一项工作的一种典型的方式就是调用一个函数去做那件事。定义函数是程序员刻画怎样完成某个操作的一种方式。一个函数只有先声明后才能够调用。 在一个函数的生命中,需要给出函数的名字,这个函数返回值的类型,以及在调用这个函数的时候必须提供的参数的个数和参数类型。看如下声明: void fun(x,y) ;//这种声明是毫无意义的,因为参数类型未知。 2、函数的定义 在程序中调用某个函数,首先必须在某个地方定义(仅仅定义一次)。一个函
2010-10-20 05:13:00
1444
原创 指向void类型的指针
指向void的指针是个非常有趣的东西,一个指向任何对象类型的指针都可以赋值给类型为void *的变量,void *可以赋值给另一个void *,两个void *可以比较是否相等(当两个指针比较时,是看它们是否指向同一块内存地址),而且可以显示的将void *转换到另一个类型。初次之外,其他任何对void *的操作都是不安全的,因为编译器不知道它实际指向哪个对象。请看下面的实例: void f(int *pi) { void *pv =pi; //可以,从int*
2010-10-20 02:16:00
1712
原创 关于数组和数组初始化的问题
数组的定义: float v[3]; //定义了一个数组v,它包含三个float型的元素; char *v1[3]; //定义了一个数组v1,它包含3个char *型的元素。 数组元素的个数,即数组的届必须是一个常量表达式。如 int i; int a[i];//错误,数组大小必须是常量表达式 数组初始化: int v2[] = {1,2,3,4}; char v3[] = {‘a’, 'b', 'c', 'd'}; 上述数组声明时没有给出数组大小,但是有初始化列表时,数组
2010-10-19 16:09:00
1013
原创 typedef和#define的用法和区别
一、typedef的用法 1、在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像: typedef int INT; typedef char* Pchar; typedef (int*) pINT; typedef unsigned char uchar; // 将频繁使用且较长的类型定义一个别名 2、typ
2010-10-18 11:49:00
6661
原创 C++中,局部变量可以和全局变量重名吗?
这是一个作用域的问题。一个声明将一个名字引进一个作用域;局部变量(通常在函数中定义)的作用域是从声明的那一点开始,直到这个声明所在的块结束为止(一个块就是由{}围起来的一段代码)。全局变量(在所有函数、类、命名空间之外定义)的作用域从声明的那一点开始,直到这个声明所在的文件的结束。与全局变量重名的局部变量可以屏蔽全局变量,如果想在块内使用全局变量需要通过作用域解析运算符::引用。 见下例: //global_local.cpp #include using namespace std; i
2010-10-18 10:53:00
2822
原创 C / C++中的零(0)
零(0)是一个整数。由于各种标准转换,0可以被用于表示任意整数(布尔量:bool,字符型:char,整型数:int)、浮点类型、指针、还有指向成员的指针的量。0的类型将由上下文确定。 由于没有任何对象会被分配到地址0,因此,0也被当做一个指针常量,表明一个指针当时并没有指向任何对象。在C语言中非常流行的就是用NULL宏表示0指针。由于C++收紧的类型检查规则,采用普通的0表示空指针比NULL更好一些。如果你习惯了使用NULL来表示0指针,那么最好采用如下定义: const int NULL = 0
2010-10-18 06:30:00
7071
原创 输入一个字符常量,输出此字符常量对应的整数值。
//File Name:Test.cpp #include using namespace std; int main() { char c; cout> c; cout
2010-10-17 18:07:00
2578
原创 Axure介绍
互联网行业产品经理的一项重要工作,就是进行产品原型设计(Prototype Design)。而产品原型设计最基础的工作,就是结合批注、大量的说明以及流程图画框架图wireframe,将自己的产品原型完整而准确的表述给 UI、UE、程序工程师,市场人员,并通过沟通会议,反复修改prototype 直至最终确认,开始投入执行。 进行产品原型设计的软件工具也有很多种,我写的这个教程所介绍的Axure RP,是taobao、dangdang等国内大型网络公司的团队在推广使用的原型设计软件。同时,此软件
2010-08-15 21:36:00
1168
原创 Fedora下gtk+开发包安装手记
基本package: gtk+ 是基于以下三个库开发的: glib:gtk+与gnome的底层核心库,主要提供了C数据结构、可移植封装、运行时功能接口,譬如事件循环、多线程、动态装载和对象机制等; pango:国际化文本陈列及渲染库,它是gtk+的文本与字体处理核心; atk:可访问接口库。使用ATK库,可以让你的程序很方便的使用屏幕阅读器、放大镜,以及一些输入设备等。 另外,还有cairo库也是安装gtk+所必须的。car
2010-08-14 06:29:00
1343
原创 errno.h头文件介绍
<br />查看错误代码errno是调试程序的一个重要方法。当linux C API函数发生异常时,一般会将errno变量(需包含errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因。在实际编程中用这一招解决了不少原本看来莫名其妙的问题。比较麻烦的是每次都要去linux源代码里面查找错误代码的含义,现在把它贴出来,以后需要查时就来这里看了。<br />以下来自linux 2.4.20-18的内核代码中的/usr/include/asm/errno.h<br />#ifnde
2010-07-28 23:03:00
1100
转载 Signal & Slot
信号和 槽是用来在对象间通讯的方法,当一个特定事件发生的时候,signal会被 emit 出来,slot 调用是用来响应相应的 signal 的。QT 对象已经包含了许多预定义的 signal,但我们总是可以在派生类中添加新的 signal。QT 对象中也已经包含了许多预定义的 slog,但我们可以在派生类中添加新的 slot 来处理我们感兴趣的 signal.signal 和 slot 机制
2010-05-08 09:36:00
1973
原创 QT signal & slot 定义及用法
信号和槽是Qt编程的一个重要部分。这个机制可以在对象之间彼此并不了解的情况下将它们的行为联系起来。在前几个例子中,我们已经连接了信号和槽,声明了控件自己的信号和槽,并实现了槽函数,发送了自己的信号。现在来更深入了解这个机制。槽和普通的c++成员函数很像。它们可以是虚函数(virtual),也可被重载(overload),可以是公有的(public),保护的(protective),也可是私
2010-05-08 09:09:00
25038
5
原创 一步到位设置Linux系统时间
咱就说说linux怎么一步到位设置系统时间。拿linux虚拟机做实验的朋友会知道。当你把linux还原到某个点的时候,vmware帮不了你把系统时间也给重设了。所以这时候就要手工来搞。关于咋设linux时间。网上介绍也很多,但是都是抄来抄去的东西。那怎么才能高效快捷的设置系统时间呢? 开始的时候,或者网上都有的说法,比如说把时间设为2009-11-12 18:30:50
2010-05-03 21:11:00
865
原创 UML核心元素之 用例
用例在UML中是最重要的一个元素。之所以说它重要,是因为UML是面向对象的,除用例之外其他元素都是“封装”的、“独立”的。基本概念 用例(Use Case)是一种把现实世界的需求捕获下来的方法。这个世界功能性体现在,首先有某个人的一个愿望,这个愿望驱使人去做事并获得一个确定的结果。一个系统就是由各种各样的愿望组成的。换句话说,各种各样的人为了各自的目的做着各种各样的事情共同组
2010-04-10 23:10:00
1482
原创 UML 核心元素之 参与者
参与者(actor)在建模过程中是处于核心地位的。UML官方文档对actor的定义为:参与者(actor)是在系统之外与系统交互的某人或某事物。“系统之外”的定义说明在参与者和系统之间有一个明显的边界,参与者(actor)只可能存在于边界之外,边界之内的所有人或者事物都不是参与者。参与者(actor)还有另外一种叫法:主角。主角这一叫法则很明确的说明了只有主动启动了业务的,才是参与者。 发
2010-04-09 23:24:00
10257
1
转载 怎样的需求文档才是合格的需求文档
软件需求规格说明作为产品需求的最终成果必须具有综合性:必须包括所有的需求。开发者和客户不能作任何假设。如果任何所期望的功能或非功能需求未写入软件需求规格说明那么它将不能作为协议的一部分并且不能在产品中出现。 构造并编写软件需求规格说明,并使用户和其它读者能理解它牢记以下可读性的建议: ● 对节、小节和单个需求的号码编排必须一致。 ● 在右边部分留下文本注释区。
2010-04-05 12:34:00
903
转载 需求工程中需求调研时的方法和技巧
需求调研是企业在建立新系统前所必须经历的调查了解阶段。可以说需求调研是软件实施中较重要的部分,调研的结果将直接影响到新建系统效能的发挥。什么是需求调研?需求调研指通过和客户反复进行沟通和交流而获取客户需求的一系列活动,为编写《软件需求规格说明书》做的前期工作。 对于企业来说,建立新系统最重要的第一步是清楚地定位自己:自己有什么、还缺什么。如果没有对自己情况的详细了解何
2010-04-05 11:17:00
1146
转载 软件需求和需求工程
一、软件需求的定义 在IEEE软件工程标准词汇表(1997年)中定义软件需求为: (1)用户解决问题或达到目标所需的条件或能力。 (2)系统或系统部件要满足合同、标准、规范或其它正式规定文档所需具有的条件或能力。 (3)一种反映上面(1)或(2)所描述的条件或权能的文档说明。 实通俗的讲,“需求”就是用户的需要,它包括用户要解决的问题、达到的目标
2010-04-04 18:56:00
3780
转载 需求分析之原型分析法
原型法(Prototyping)的理念是指在获取一组基本需求之后,快速地构造出一个能够反映用户需求的初始系统原型。让用户看到未来系统的概貌,以便判断哪些功能是符合要求的,哪些方面还需要改进,然后不断地对这些需求进一步补充、细化和修改。依次类推,反复进行,直到用户满意为止并由此开发出完整的系统。简单的说,原型法就是不断地运行系统的“原型”来进行揭示、判断、修改和完善需求的分析方法。
2010-04-04 18:24:00
10162
1
转载 你是不是一只被“圈养的鸡”?
圈养的鸡,下蛋多?还是放养的鸡,下蛋多?圈养的鸡下的蛋好吃,还是放养的鸡下的蛋好吃?散养鸡好处:1.鸡活动空间大,鸡活泼,羽毛比圈养鸡有光泽,肉味也比圈养鸡鲜嫩。2.减少饲料消耗,可以降低喂养成本。3.因为活动空间大了,鸡的粪便密集度降低了,减少养鸡的污染。 散养的鸡有足够的活动空间,而且吃的东西很杂.经常活动,鸡长的慢,鸡肉紧实.圈养的
2010-04-04 17:45:00
890
华为SoftX3000软交换系统技术手册
2010-08-30
华为CC08交换机 配置说明书
2010-08-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人