06 2011 档案

摘要:是的,一直以来对“ C++ static、const对象声明与定义 问题来源 ”所述的问题都用vs2008来写demo来测试,没有用linux的gcc尝试过,今天尝试了一下,这样以来问题还给解决了。。。这里使用的是redhat 5.5T.h文件内容:T.cppmain.cpp程序执行:上面的demo显示,《C++ primer》401页和402页得表述是正确的,是标准C++的描述。。。。这里也算是一个总结吧。。以后就要标准来标准轴 阅读全文
posted @ 2011-06-30 16:27 Podevor 阅读(150) 评论(0) 推荐(0) 编辑
摘要:站在窗口已经很多次了。但是每次的想法都差不多是一样的。看着马路上的车来回的行驶,有时却也是疾驰。此刻我的心情是激动的,在大学已经三年了,马上就要“被大四”了,其实都已经被了。。。总觉得,在学校是在温室里面,每天呼吸的空气都是清新的,不是心理感觉事实却也是这样的。偶尔走出校门的时候,得以呼吸社会的空气,那样的空气,有人说社会的空气里面都有着“疾”+“挤”。。。每个人都在为和时间打拼打架。。。站在窗口边看着外面,那不是对社会的害怕是一种向往,希望自己可以早早的去社会大学,那里才是我的人生舞台,在那里才能收获意想不到的。。。社会是忙碌的,汽车都是疾驰的,时间是滑溜溜的。。。不过,好在日子是光鲜的,有 阅读全文
posted @ 2011-06-30 13:36 Podevor 阅读(103) 评论(0) 推荐(0) 编辑
摘要:问题源自书《C++primer》(第四版·特别版)。书401页下面注意中写道:const static 数据成员在类的定义体中初始化时,该数据成员仍必须在类的定义体之外进行定义。书402页页首写道:在类内部提供初始化时,成员的定义不必在指定初始值:参看代码是:class Account{ ... private: static const int period = 30; ...};类体外的定义:const int Account::period;就这里开始,自己写了一个class,类体中提供了const static的初始值,在类的实现文件中定义这个成员是就出现了错误:类似:sta 阅读全文
posted @ 2011-06-29 08:41 Podevor 阅读(137) 评论(0) 推荐(0) 编辑
摘要:昨天那个朋友告诉我处理const static的办法,程序却也跑起来了。但是昨晚睡觉的时候突然觉得不对头。看下面的代码:#include "TestClass.h"//static const int TestClass::m_con_var;//int TestClass::m_nvar = 0;//int TestClass::m_cnsta_var = 12;//TestClass::m_ntestVar//extern const int m_con_var;/*int TestClass::m_con_var = 0*/;int TestClass::m_nvar 阅读全文
posted @ 2011-06-29 08:25 Podevor 阅读(226) 评论(0) 推荐(0) 编辑
摘要:////////////////fileName:TestClass.h//////////////#pragma once#ifndef THIS___#define THIS___#include <iostream>using namespace std;//const int TestClass::m_con_varclass TestClass{public: TestClass(); TestClass(int n); virtual ~TestClass(void); int m_ntestVar; static int m_nvar; const static in 阅读全文
posted @ 2011-06-28 20:51 Podevor 阅读(156) 评论(0) 推荐(0) 编辑
摘要://ListClass.h#pragma onceclass ListClass{public: ListClass(void); ListClass(int var,string name); virtual ~ListClass(void); int getVar(void); void setVar(int var); string getVarName(void); void initData(); vector<ListClass> getVector(); protected: int m_var; string m_name; vector<ListClass& 阅读全文
posted @ 2011-06-28 17:13 Podevor 阅读(233) 评论(0) 推荐(0) 编辑
摘要:////////////////fileName:TestClass.h////////////#pragma onceclass TestClass{public: TestClass(); TestClass(int n); virtual ~TestClass(void);protected: int m_ntestVar; static int m_nvar; const static int m_cnsta_var = 0;public: int display(void);}; 在TestClass中定义了一个const static属性和static属性//////////... 阅读全文
posted @ 2011-06-28 12:56 Podevor 阅读(266) 评论(0) 推荐(0) 编辑
摘要:这一直在玩下面的代码一直都没有解决erase问题,今天再读代码在发现了问题的所在。// demo_vector_push.cpp : Defines the entry point for the console application.//#include "stdafx.h"int _tmain(int argc, _TCHAR* argv[]){ vector<string> strvec;//add parameters int i = 0; string str = ""; while(i < 10 && ge 阅读全文
posted @ 2011-06-28 10:53 Podevor 阅读(368) 评论(0) 推荐(0) 编辑
摘要:algorithm中的unique 用于去除指定容器中重复的元素,返回一个没有重复元素的序列的最后一个元素,要打印这样的数据信息则从容器的begin()开始到这个返回的地方就可以了。 vector<string> strvec; cout << "use unique" << endl; vector<string>::iterator it = strvec.begin(); vector<string>::iterator ituniq = unique(it,strvec.end()); //ituniq 指 阅读全文
posted @ 2011-06-27 15:04 Podevor 阅读(194) 评论(0) 推荐(0) 编辑
摘要:RAII是“资源获取就是初始化”的缩语(Resource Acquisition Is Initialization),是一种利用对象生命周期来控制程序资源(如内存、文件句柄、网络连接、互斥量等等)的简单技术。 RAII 的一般做法是这样的:在对象构造时获取资源,接着控制对资源的访问使之在对象的生命周期内始终保持有效,最后在对象析构的时候释放资源。借此,我们实际上把管理一份资源的责任托管给了一个对象。这种做法有两大好处: 1,我们不需要显式地释放资源。 2,采用这种方式,对象所需的资源在其生命期内始终保持有效 —— 我们可以说,此时这个类维护了一个 invariant。这样,通过该... 阅读全文
posted @ 2011-06-25 17:24 Podevor 阅读(151) 评论(0) 推荐(0) 编辑
摘要:1、修改密码 因为默认是没有密码的为了安全先修改密码,方法是:先停止mysql/etc/init.d/mysql stop--安全模式启动[root@mysql var]#mysqld_safe --skip-grant-tables &[1] 10912[root@mysql var]# 110407 17:39:28 mysqld_safe Logging to '/usr/local/mysql/var//mysql.chinascopefinanical.com.err'.110407 17:39:29 mysqld_safe Starting mysqld d 阅读全文
posted @ 2011-06-23 19:35 Podevor 阅读(286) 评论(0) 推荐(0) 编辑
摘要:远程登陆的,要修改权限,2种方法:1、本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"mysql -u root -pvmwaremmysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;2、直接授权,例如,你想root 阅读全文
posted @ 2011-06-23 17:15 Podevor 阅读(115) 评论(0) 推荐(0) 编辑
摘要:mysqladmin: connect to server at 'localhost' failed的解决方案![root@mysql var]# mysqladmin -u root password '123456'mysqladmin: connect to server at 'localhost' failederror: 'Access denied for user 'root'@'localhost' (using password: NO)'[root@mysql var]#/e 阅读全文
posted @ 2011-06-23 17:09 Podevor 阅读(330) 评论(0) 推荐(0) 编辑
摘要:类的构造函数1、“缺省的拷贝构造函数”和“缺省的赋值函数”均采用“位拷贝”而非“值拷贝”的方式来实现,若类中含有指针变量,不能采用缺省的方式。2、如果类存在继承关系,派生类必须在其初始化表里调用基类的构造函数。3、类的const 常量只能在初始化表里被初始化,因为它不能在函数体内用赋值的方式来初始化。4、非内部数据类型的成员对象采用初始化表的方式初始化较好。5、拷贝构造函数和赋值函数非常容易混淆,常导致错写、错用。拷贝构造函数是在对象被创建时调用的,而赋值函数只能被已经存在了的对象调用。成员函数1、任何不会修改数据成员的函数都应该声明为const 类型。 阅读全文
posted @ 2011-06-23 16:27 Podevor 阅读(211) 评论(0) 推荐(0) 编辑
摘要:(1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static 变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(3) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc 或new 申请任意多少的内存,程序员自己负责在何时用free 或delete 释放内存。动态内存的生存期由我们决定,使用非常灵活,但问题也最多。PS:1、用malloc 或new 申请内存之后,应该立即检查指针值 阅读全文
posted @ 2011-06-23 16:20 Podevor 阅读(134) 评论(0) 推荐(0) 编辑
摘要:注意如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。注意如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual 关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)。 阅读全文
posted @ 2011-06-23 16:19 Podevor 阅读(131) 评论(0) 推荐(0) 编辑
摘要:(1)引用被创建的同时必须被初始化,指针则可以在任何时候被初始化。(2)不能有NULL 引用,引用必须与合法的存储单元关联,指针则可以是NULL。(3)一旦引用被初始化,就不能改变引用的关系,指针则可以随时改变所指的对象。 阅读全文
posted @ 2011-06-23 16:16 Podevor 阅读(113) 评论(0) 推荐(0) 编辑
摘要:在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU 跨切循环层的次数。for (row=0; row<100; row++){for ( col=0; col<5; col++ ){sum = sum + a[row][col];}}低效率:长循环在最外层 for (col=0; col<5; col++ ){for (row=0; row<100; row++){sum = sum + a[row][col];}}高效率:长循环在最内层如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面。如果N 非常大,最好采 阅读全文
posted @ 2011-06-23 15:35 Podevor 阅读(276) 评论(0) 推荐(0) 编辑
摘要:假设整型变量的名字为value,它与零值比较的标准if 语句如下:if (value == 0)if (value != 0)不可模仿布尔变量的风格而写成if (value) // 会让人误解value 是布尔变量if (!value)假设布尔变量名字为flag,它与零值比较的标准if 语句如下:if (flag) // 表示flag 为真if (!flag) // 表示flag 为假其它的用法都属于不良风格,例如:if (flag == TRUE)if (flag == 1 )if (flag == FALSE)if (flag == 0假设浮点变量的名字为x,应当将if (x == 0.0 阅读全文
posted @ 2011-06-23 15:26 Podevor 阅读(164) 评论(0) 推荐(0) 编辑
摘要:there are three files: T.h , T.cpp and main.cpp .I wanna get a executive file named demo,I can vi this Makefile as follows:demo:main.o T.o g++ *.o -o demoT.o:T.h T.cpp g++ -c T.cppmain.o:main.cpp g++ -c main.cpp#T.o:T.h T.cpp# g++ -c T.cppclean: rm -f *.o 阅读全文
posted @ 2011-06-23 11:32 Podevor 阅读(184) 评论(0) 推荐(0) 编辑
摘要:一. Linux环境下提升普通用户权限(sudo) 用sudo让普通用户获得超级用户的一部分权利,能够做超级用户才能做的事情,还能够对普通用户身份做一些限制,指定某一个或某几个人来做,并且普通用户不需要知道超级用户的密码,就能够完成超级用户才能完成的任务。环境:管理员root和普通用户redhat1. 授权之前测试:# /etc/init.d/httpd restart root执行Stopping httpd: [ OK ]Starting httpd: [ ... 阅读全文
posted @ 2011-06-23 11:27 Podevor 阅读(1019) 评论(0) 推荐(0) 编辑
摘要:做人做事要有一个理由,当然这样的理由不是必须要的。不过,有了这样的理由,或许你的人生会更精彩。一艘船失去了航标,它等来的或许就是汪洋中的迷失,和不久之后的暴风雪。。。一个人失去的目标,他(她)每个过着的或许都是行尸走肉的行当。。。人生定下的每一个目标可以看着你前进的理由,那么你又给自己定了几个目标。。。很早前自己喜欢了做事有规划的进行,做什么事的首要做的就是对这个事的安排,第一步,,,第二步,,,因此,在这件事开始之前我会给自己一个明确的可行的目标。是的,明确的目标很重要,可行的更重要!一旦目标定下来了,那么就开始按照计划行事,这样的做事方式的结果是,你不会觉得自己过得每一天很无意义,无聊透顶 阅读全文
posted @ 2011-06-23 08:37 Podevor 阅读(146) 评论(0) 推荐(0) 编辑
摘要:课程大纲一、Linux操作系统 * 系统环境:Ubuntu GNU/Linux、RedHat Linux AS5、FreeBSD * 课程要求:熟练使用常用的Linux/UNIX命令。 * 时间:1周。二、Linux C++开发环境搭建、开发工具的使用 * 涉及内容:vi、GCC、GDB、Make、CVS、Subversion、Eclipse CDT * 课程要求: o 熟练使用vi文本编辑器; o 熟练使用GCC工具链进行编译、调试、构建可执行文件或共享库/静态库; o 熟练编写Makefile; ... 阅读全文
posted @ 2011-06-22 14:32 Podevor 阅读(240) 评论(0) 推荐(0) 编辑
摘要:学习linux下的c/c++编程1,先有linux环境搭minGW和cygwin都有点麻烦,最最简单的办法还是装个真正的linux,用虚拟机也好,在网络上的另一台机器也好。这样不仅快,而且你有了真正的环境。2.会C/C++语言(估计你会的)3.入门阶段熟悉gcc命令行,最基本的参数,如,-g,-W,-O,-o,-c 建议看man gcc(很大找想要的)4.编译第一个helloworld程序: 基本命令 gcc helloworld.c -o helloworld前面四个阶段的时间估计只要1-2天就可以了5.提高阶段,你需要开始了解,并熟悉ld,gdb,编写基本的Makefile,了解make. 阅读全文
posted @ 2011-06-22 13:52 Podevor 阅读(214) 评论(0) 推荐(0) 编辑
摘要:This is an ongoing battle for me, I've tried Code::Blocks, Anjuta, Netbeans, Eclipse, Qt Creator, and many many others...My personal favorite is Netbeans, it has some of the best code-completion I've seen, with Visual Studio on Windows being the only one to top it for me. You can also use it 阅读全文
posted @ 2011-06-21 10:00 Podevor 阅读(119) 评论(0) 推荐(0) 编辑
摘要:You can debug by adding printf statements to a program, but this is clumsy and very time consuming. A debugger like gdb is a much more efficient debugging tool. Adding printf statements in your program is a way that can cosume your more time.If you wanna chanage this situation and scientific way i.. 阅读全文
posted @ 2011-06-21 09:41 Podevor 阅读(107) 评论(0) 推荐(0) 编辑
摘要://con_insert.cc#include <iostream>#include <list>#include <string>#include <vector>#include <iterator>using namespace std;int main(int argc,char *argv[]){ list<string> strlist; string str; { while(cin >> str && str!=".") strlist.insert(strl 阅读全文
posted @ 2011-06-19 23:53 Podevor 阅读(154) 评论(0) 推荐(0) 编辑
摘要:我们在编程中可能会经常用到时间,比如取得系统的时间(获取系统的年、月、日、时、分、秒,星期等),或者是隔一段时间去做某事,那么我们就用到一些时间函数。linux下存储时间常见的有两种存储方式,一个是从1970年到现在经过了多少秒,一个是用一个结构来分别存储年月日时分秒的。time_t 这种类型就是用来存储从1970年到现在经过了多少秒,要想更精确一点,可以用结构struct timeval,它精确到微妙。struct timeval{ long tv_sec; /*秒*/ long tv_usec; /*微秒*/};而直接存储年月日的是一个结构:struct tm{ int tm_sec... 阅读全文
posted @ 2011-06-19 21:30 Podevor 阅读(294) 评论(0) 推荐(0) 编辑
摘要:#include <iostream>#include <string>#include <cstring>using namespace std;int main(int argc,char *argv[]){ //string hello = "hello"; char *p = "hello"; cout << p << endl; cout << "print string as old:" << endl; for(int i = 0; i 阅读全文
posted @ 2011-06-19 20:54 Podevor 阅读(203) 评论(0) 推荐(0) 编辑
摘要:strtod > Convert string to doubleatoi > Convert string to intatol > Convert string to long int1、strtoddouble strtod ( const char * str, char ** endptr );Convert string to doubleParses the C string str interpreting its content as a floating point number and returns its value as a double. If 阅读全文
posted @ 2011-06-19 19:16 Podevor 阅读(241) 评论(0) 推荐(0) 编辑
摘要:double atof ( const char * str );Convert string to doubleParses the C string str interpreting its content as a floating point number and returns its value as a double.The function first discards as many whitespace characters as necessary until the first non-whitespace character is found. Then, start 阅读全文
posted @ 2011-06-19 19:10 Podevor 阅读(156) 评论(0) 推荐(0) 编辑
摘要:#include <iostream>#include <string>using namespace std;int main(int argc,char *argv[]){ cout << "Parameter num is :" << argc << endl; cout << "the command is :" << argv[0] << endl; cout << "Parameter list is: "<& 阅读全文
posted @ 2011-06-19 18:57 Podevor 阅读(155) 评论(0) 推荐(0) 编辑
摘要:若只是查看当前目录下的文件数目(除开.和..文件),使用下面的命令:$find ./ -type f | wc -l若查看当前目录下面的所有文件,含.和..使用如下命令即可:$wc -lps:find command and wc command1、FIND命令NAMEfind - search for files in a directory hierarchySYNOPSISfind [path...] [expression]DESCRIPTIONThis manual page documents the GNU version offind. find searches thedir 阅读全文
posted @ 2011-06-19 18:32 Podevor 阅读(245) 评论(0) 推荐(0) 编辑
摘要:#include <iostream>#include <string>using namespace std;int main(){ string str = ""; //char str[200]; cin >> str; //cin.getline(str,200); int cnt[256]={}; for(int i = 0; i < str.size(); i++) //for(int i =0; i < strlen(str); i++) { cnt[(int)str[i]]++; } for(int i = 0 阅读全文
posted @ 2011-06-19 18:13 Podevor 阅读(341) 评论(0) 推荐(0) 编辑
摘要:#include <fstream>#include <iostream>#include <string>using namespace std;int main(){//从文件file.txt中读出数据(包含空格信息)ifstream in("file.txt",ifstream::app); if(!in){ cout << "open error" << endl; exit(1); } char result1; while(in.get(result1)) cout << 阅读全文
posted @ 2011-06-19 11:35 Podevor 阅读(180) 评论(0) 推荐(0) 编辑
摘要:C++ 通过以下几个类支持文件的输入输出:ofstream: 写操作(输出)的文件类 (由ostream引申而来)--->用来支持向磁盘文件的输出ifstream: 读操作(输入)的文件类(由istream引申而来)--->用来支持从磁盘文件的输入fstream: 可同时读写操作的文件类 (由iostream引申而来)---> 用来支持对磁盘文件的输入输出打开文件(Open a file)对这些类的一个对象所做的第一个操作通常就是将它和一个真正的文件联系起来,也就是说打开一个文件。被打开的文件在程序中由一个流对象(stream object)来表示 (这些类的一个实例) ,而 阅读全文
posted @ 2011-06-19 10:28 Podevor 阅读(120) 评论(0) 推荐(0) 编辑
摘要:导读:面试准备的重要性不用编者多言,大家都很清楚。本文是加拿大的一位程序员所写。大家可以看看国外程序员是怎么准备面试。不管你是否认同他的说法,《诗经》中有句话非常好——“它山之石,可以攻玉”。如果你还有其他面试准备方法,不妨在评论或微博中和大家一起分享。 一、开门见山 一般来说,你(求职者)在面试中会花很多时间谈论以前的经历。如果你还没有想出你的最具代表性的经历/案例,那么你现在是时候该做了。下面有张问题表,虽然很多问题看似比较低级,但相信我,看完这些问题后,你应当反思自己。即便面试时没有碰到类似这张列表上的问题,你在面试也可以用上已准备好的答案。 1. 说说你自己吧 2... 阅读全文
posted @ 2011-06-18 21:26 Podevor 阅读(119) 评论(0) 推荐(0) 编辑
摘要:我所在的创业公司Pulse一直希望能多招聘几个开发人员。因此,最近我想了很多招聘过程的有关事项,以及自己的一些面试经验。 我参加过的面试中,最糟糕的要数之前去电话面试实习的那次,那时有两个面试官对着扬声器和我谈到关于Java程序方面细枝末节的一些笑话。起初,我听得一头雾水,因为他们提到的那些点我之前都没碰到过,所以我觉得在那次面试中自己表现太差了。后来我想,我不想在一个不注重员工解决问题能力的公司实习。这就是我那次面试的最终结果,可我还是常常怀疑人们到底是怎样通过技术面试来为相应的工作挑选出合适的人选。我的猜测是,在面试中表现出色的人往往都是优秀的。但是,技术面试也可能会将在面试中表现不佳,. 阅读全文
posted @ 2011-06-18 21:19 Podevor 阅读(157) 评论(0) 推荐(0) 编辑
摘要:做程序员的经历让我知道了一些关于软件编程的事情。下面的这些事情可能会让朋友们对软件开发感到惊讶:1. 一个程序员用在写程序上的时间大概占他的工作时间的10-20%,大部分的程序员每天大约能写出10-12行的能进入最终的产品的代码 — —不管他的技术水平有多高。 好的程序员花去90%的时间在思考、研究和实验,来找出最优方案。差的程序员花去90%的时间在调试问题程序、盲目的修改程序,期望某种写法能可行。“一个卓越的车床工可以要求比一个一般的车床工多拿数倍高的工资,但一个卓越的软件写手的价值会10000倍于一个普通的写手。”——比尔 盖茨2. 一个优秀的程序员的效率会是一个普通的程序员的十倍之上。一 阅读全文
posted @ 2011-06-18 21:10 Podevor 阅读(129) 评论(0) 推荐(0) 编辑
摘要:http://www.cnbeta.com/articles/105232.htm虎年春节刚过,雨林木风公司位于松山湖的新大楼内,装修工人们又忙碌了起来。雨林木风, 曾被业界称为“三大XP盗版集团”之一,与番茄花园齐名。名气虽大,公司人员并不多,只有几十人。人虽少却占用了一栋六层的办公楼办公,还配备了专门的娱 乐休闲区。据说谷歌中国的办公环境也不过如此。 赖霖枫说,新大楼就是要向外界展示一个全新的雨林木风。 早在 2008年8月,微软打击盗版系统的大棒砸向了番茄花园,雨林木风迫于压力解散“雨林木风工作室”。 去年的平安夜,在解散一年后,雨林 木风高调发布了精仿Windows XP的Li... 阅读全文
posted @ 2011-06-18 20:29 Podevor 阅读(155) 评论(0) 推荐(0) 编辑
摘要:Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE ... 阅读全文
posted @ 2011-06-18 12:33 Podevor 阅读(195) 评论(0) 推荐(0) 编辑
摘要:错误原因:必须在g++前使用tab来分隔,如下面的红色部分,使用tab进行了分隔、修改上面;make成功 阅读全文
posted @ 2011-06-17 20:03 Podevor 阅读(652) 评论(0) 推荐(0) 编辑
摘要:入门: 入门就是要初步对编程的思想有个了解,并且能编程解决一些小问题。入门一定要选好书,难度如果太低了会造成对读者的误导,以为编程就是这么回事;也不能太高深,免的打击读者的信心。既然编程的入门要求是编一些小程序解决小问题,那么就没必要直接学习C++,我觉得循环、判断、跳转、指针才是最基本的编程思想,学通了这些对以后学习C++很有帮助。 我建议应该先把C扎实地学好,不光要掌握C的语法,因为学习编程的最终目的是解决实际问题,所以还要适当掌握把实际问题与编程联系在一起的能力,我推荐《 C程序设计语言(第2版) 》,这本书是C语言之父写的,不仅详尽介绍了C的语法,还提供了很多实际的小问题作为实... 阅读全文
posted @ 2011-06-17 18:03 Podevor 阅读(432) 评论(1) 推荐(0) 编辑
摘要:Most of this document was taken nearly verbatim from Paul Hilfinger. Any errors introduced, however, are David Wolfe's. IntroductionGNU provides are a publicly-available optimizing compilers (translator) for C, C++, Ada 95, and Objective C that currently runs under various implementations of Uni 阅读全文
posted @ 2011-06-16 10:07 Podevor 阅读(153) 评论(0) 推荐(0) 编辑
摘要:The C compiler on eniac is gcc. Its C++ counterpart is g++. To compile a C or C++ program: % gcc file.cor% g++ file.cThis compiles file.c into an executable binary named a.out.Here are a few options to gcc and g++: -o outputfileTo specify the name of the output file. The executable will be named a.o 阅读全文
posted @ 2011-06-16 10:04 Podevor 阅读(198) 评论(0) 推荐(0) 编辑
摘要:为了便于分析这里建立了两个模型来了分析作用域的问题:这里我们看到的是一个上端很尖的沙漏,现在有沙子从上端漏下,很自然的,下面的local scope 以及global scope 都不可能碰到。语句作用域里面的变量不能被local 和global 访问和操作,局部作用域里面的变量也不能被全局作用域操作再来看看这个模型。现在沙漏尖端在下,那么当在上面放入沙子时,很自然的,下面的local和statement都可以接触到。全局变量可以在局部访问和操作,也可以才语句作用域中操作;局部变量可以在语句作用域中操作。 阅读全文
posted @ 2011-06-06 10:59 Podevor 阅读(131) 评论(0) 推荐(0) 编辑
摘要:Normal 0 7.8 pt 0 2 false false false MicrosoftInternetExplorer4 在Unix like系统中,正是有了驱动程序才使得用户可以完全透明的使用计算机系统。设备驱动隐藏了硬件设备的具体的细节和功能,对于不同的硬件设备都提供了一致的接口。比如在Linux系统中,为了便于用户的使用,系统把计算机系统的各种设备映射成一系列的特殊的设备文件,叫设备文件节点。用户可以任意的使用它来协助自己完成任何工作。在Linux系统中,所... 阅读全文
posted @ 2011-06-05 15:11 Podevor 阅读(159) 评论(0) 推荐(0) 编辑