自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Cgsyuan

不断学习

  • 博客(37)
  • 收藏
  • 关注

原创 MIT计算机科学与编程导论——class2

1.datatype operator  Primary type:numbers strings booleans  Values-type每一个数据对应一个数据类型  运算符重载(overload)    3*’ab’//ok    3+’ab’//error  Type conversion:str(3)+’ab’  Type checking: 3

2015-08-14 22:22:12 777

原创 MIT计算机科学与编程导论——class1

1.goal(目标)     Computation thinking(计算思维)     Understand code(read and write code)     Understand abilities and limits     map problem into computation 将科学问题转化的计算机的框架中 2.knowle

2015-08-14 22:17:43 717

原创 关于指针和引用

1.异同点引用与指针都是复合类型(compound type),建立在已存在类型的基础上引用是对对象的绑定,是对象的别名,并不是具体的对象;指针指向某一对象,指针本身就是一个对象引用在定义时必须初始化,且只能绑定一个对象不能修改;指针在定义时不要求初始化,且指针可以更改指向的对象2.初始化引用的初始化:View Code指针的初始化:

2015-08-14 22:05:51 535

原创 关于局部变量、静态局部变量、全局变量、静态全局变量

局部变量:      一种动态存储方式,在作用域内定义时创建,到作用域结束时销毁。      定义局部变量时若未初始化,对内置类型来说,其值是为定义的。静态局部变量:      一种静态存储方式,在作用域内定义时创建,到程序结束时销毁。      定义静态局部变量是若未初始化,对内置类型来说,初始化为0      注意:静态局部变量的生存期(life

2015-08-14 22:04:07 660

原创 关于编译的一些小知识

GNU编译器g++编译c++程序:在Windows下,进入源代码所在的路径下,在命令行中输入: g++ -o test.exe test.cpp将test.cpp编译生成test.exe可执行文件,如果没有-o test.exe选项,默认生成a.exe在Linux下,进入源代码所在的路径下,在命令行中输入:g++ -o test test.cpp

2015-08-14 22:01:59 509

原创 关于main函数的返回值

#include using namespace std;/* * test the return value of the main * the return type of the main must be int,and 0 is normal,others express the type of error */int main(){ return 0;

2015-08-14 21:58:57 728

原创 Linux权限管理——sudo和chattr权限

权限管理——sudo权限我们知道Linux中/sbin和/usr/sbin下的命令只有管理员才能执行,但有时候我们需要将某些只有管理员才有权限执行的命令授予给一些普通用户去执行来简化工作,当然命令的授予必须合理控制。首先要做的是给普通用户授予命令的使用,若未授权,则会出现警告 visudo或vi /etc/sudoers修改配置文件 root  ALL=(ALL)  A

2015-06-05 16:57:47 1194

原创 Linux权限管理2——setuid、setgid、stricky bit

Linux权限管理——set uid、set gid、stricky bit(比较危险的操作) setuid用户在执行具有suid权限的可执行文件时,身份发生转化,暂时成为该文件的所有者,执行完毕后身份再切换回来1)该文件是一个可执行二进制程序2)用户对该文件有执行权限3)执行完毕后身份还原setuid的设定方法chmod 4755 chmod u+s

2015-06-05 16:39:12 948

原创 Linux权限管理1——ACL权限

Linux权限管理——ACL权限我们已经知道Linux的文件有所有者,所属组,其他人三种权限,但这是远远不够的,比如说,有一个project,项目管理员将所有项目人员添加到该项目的所属组中,分配权限770,有一天,临时来了一个成员,该成员需要先进行学习,然后才能工作,这时我们需要对该成员对project分配读和可执行的权限,不能将其他人权限设为5,文件只有一个所属组,所以对project分配两

2015-06-05 16:36:59 1653

原创 Linux——用户和用户组管理

用户和用户组管理 1.用户和用户组配置文件/etc/passwd 用户信息的配置文件/etc/shadow 用户密码信息的配置文件/etc/group 用户组信息的配置文件/etc/gshadow 用户组密码信息的配置文件查看配置文件的帮助说明  1)/etc/passwd查看配置文件帮助man 5 passwdThere is one entry pe

2015-06-02 23:25:35 985

原创 Linux软件包安装4——源码包安装以及脚本安装包Webmin实现web管理

1.源码包的安装源码包的安装过程:1.下载源码包2.解压源码包,进入到解压包中3.查看INSTALL文件,里面会有相关的安装文件说明./configure1.配置环境2.定义安装选项  ./configure --help 查看可以定制的安装选项3.生成makefile文件./configure --prefix=安装路径Make 编译M

2015-05-31 17:03:57 1847

原创 Linux软件包安装3——基于red hat系列的yum管理安装

yum管理安装rpm手动安装软件包会受到包依赖的困扰,red hat系列提供了一种yum在线管理方式解决了这一问题,安装软件包时,yum会去服务器上安装所有的包(需要安装的软件包和依赖的包)yum list  显示yum源中所有的软件包yum -y install 包名 安装yum -y update 包名 更新yum -y remove 包名 卸载

2015-05-31 16:40:47 908

原创 Linux软件包安装2——基于red hat系列的rpm命令安装及apache简单搭建httpserver

rpm命令管理rpm包是基于red hat系列的二进制安装包。常见的red hat系列的有red hat enterprise Linux、centos、fedora等Linux发行版本首先介绍一下rpm包的命名方式:httpd-2.2.15-39.el6.centos.i686.rpm 在介绍Linux的rpm命令之前,先说明两个概念:包全名:类似于上述的完整的命名方式

2015-05-30 20:34:06 2304

原创 Linux软件包安装1

Windows下的所有软件包都不能在Linux下安装1)所有的软件包需要针对Linux专门开发2)Windows下的病毒不能在Linux下运行Linux的软件包分为源码包和二进制包,所谓的源码包就是将源代码打包的文件,二进制包就是已经根据源码编译好的机器包文件,还有一种根据源码包再开发的脚本安装包。源码包的优点1.学习,看到源代码2.稳定高效,针对机器编译3.灵

2015-05-30 20:25:27 583

原创 tlcl-从shell眼中看世界echo

从shell眼中看世界echo-显示一行文本当输入一个命令,bash在执行命令之前,会对输入的字符做展开处理。路径展开echo *shell将*展开为当前目录下的文件名称,会打印出当前目录下的文件名称,echo d*       打印出当前目录下所有以d开头的文件echo *d       打印出当前目录下所有以d结尾的文件 ~展开ech

2015-05-30 09:54:31 1046 3

原创 tlcl-redirection(重定向)

重定向(redirection)所谓的重定向可以简单的理解为重新指定输入输出的方向,既然是重新制定输入输出的方向,那么原来的输入输出方向是如何的呢?计算机的I/O有标准输入、标准输出、输出错误,默认的标准输入是与键盘相连接的,标准输出是与屏幕相连接的,至于输出错误也是默认连接到屏幕。而I/O重定向可以允许我们更改这些默认连接,从文件中读取内容,将输出写入到文件等等,都是重定向。

2015-05-29 13:11:57 2164

翻译 Learn Vim Progressively——level1&level2

You want to teach yourself vim (the best text editor known to human kind) in the fastest way possible. This is my way of doing it. You start by learning the minimal to survive, then you integrate all 

2015-05-26 11:11:24 687

原创 《c++ primer》5——c风格字符串

字符串字面值的类型就是const char类型的数组。c风格字符串c风格字符串既不能确切地归结为C语言的类型,也不能归结为c++类型,而是以空字符null结束的字符数组。 char ch1[] = { 'a', 'b', 'c' }; char ch2[] = { 'a', 'b', 'c', '\0' }; char ch3[] = "abc";

2015-05-22 17:33:07 794

原创 Linux常用命令(六)——帮助命令

学习Linux查看帮助文档是必须掌握的,今天介绍几个帮助命令:命令名称:man英文原意:manual功能描述:查看命令或配置文件的帮助文档e.g.:man ls  man services注意:1)查看配置文件不能使用路径,只输入配置文件名称即可2)对于有些命令,既可以当作命令,也可以当作配置文件,在man的时候需要区分1表示命令的帮助文档5表示配置

2015-05-22 10:52:58 588

原创 c++中cout输出字符串首地址

char *p="hello";cout<<p;在我们的印象中此时会输出字符串的首地址,然而此时cout会直接将字符串输出,而不是字符串的首地址,而在c语言中printf("%p",p);就会输出字符串数组的首地址,printf("%s",p);则会输出字符串。c++语言中的解决方案:用void*指向字符串,cout无法知道void*指针指向的数据的解析方法,所以会输出字符

2015-05-21 17:42:40 4627

原创 《c++ primer》4 指针和const限定符

const对象在定义的时候必须进行初始化

2015-05-21 10:16:42 572

原创 Linux常用命令(五)

解压缩命令:命令名称:gzipgunzip功能描述:解压缩文件(只能压缩文件不能压缩目录)e.g.:gzip /tmp/test/servicesgunzip /tmp/test/services.gz注意:由上图可知gzip的压缩比还是比较大的,并且解压缩后不保留源文件,解压也可以用gzip -d filename命令名称:zipunzip

2015-05-21 00:24:22 548

原创 Linux下sudo 用户不在sudoers 文件中。此事将被报告

今天在centos6.5中进行光盘挂载的时候,提示用户不再sudoers文件中,此事将被报告。搜索答案,得以解决:修改/etc/sudoers,将用户添加到sudoers中1.发现sudoers的权限为440,只读不可修改一种方法是root强制修改保存,vi下:wq!;另一种方法就是修改文件权限打开sudoers文件  vi /etc/sudoers

2015-05-19 15:18:18 10575

原创 Linux常用命令(四)

1.命令名称:find英文原意:命令所在路径:/bin执行权限:所有用户功能描述:按条件搜索使用:find 搜索范围  匹配条件选项:-name按名称搜索-iname  按名称搜索(不区分大小写)-size   按照大小搜索-aand连接两个条件,同时满足-oor连接两个条件,满足其一即可-type按照文件类型搜索-u

2015-05-19 09:25:03 512

原创 Linux常用命令(三)

1. 命令名称:chmod英文原意:change mode命令所在路径:/bin执行权限:所有用户功能描述:改变文件的权限选项: -R 改变该目录下所有文件的权限权限: r: 4w: 2x: 1e.g.: chmod u+x,g+w,o-r /tmp/test将tmp目录下的test文件,所有者的权限加x,所属组的权限加w,其他人的权限减rchm

2015-05-16 19:32:41 469

原创 Linux常用命令(二)

命令名称:touch英文原意:命令所在路径:/bin执行权限:所有用户功能描述:创建一个文件e.g.: touch /tmp/test.txttouch /tmp/"program files"注意:文件的命名没有要求,不能用/           文件的名称尽量不要用空格命令名称:cat英文原意:命令所在路径:/bin执行权限:所有用户

2015-05-16 12:11:50 491

原创 Linux常用命令(一)

命令格式:command [-option] [parameter]选项:调整命令功能1)多个选项可以写在一起  -al2)简化选项与完整选项    -a   --all命令名称:ls英文原意:list命令所在路径:/bin执行权限:所有用户功能描述:显示目录下的内容选项:-a显示所有文件(包括隐藏文件)-l以长格式显示(long f

2015-05-15 19:02:36 499

原创 vmvare下网络设置的三种方式

1.host-only(主机模式)主机模式下虚拟机使用的是vmnet1网卡,此时宿主机拥有两块网卡(物理网卡+vmnet1虚拟网卡),将虚拟机的ip设置成与宿主机vmnet1同网段,此时即可实现宿主机与虚拟机之间的通信。相当与宿主机与虚拟机之间形成了一个虚拟的局域网,该局域网与宿主机所在的真实局域网是相互独立的,未经路由设置双方不能够通信,同时虚拟机不能进行对外通信。2.NAT模式

2015-05-15 09:35:41 648

原创 《c++ primer》 习题3.17-3.24

习题3.17:略习题3.18:题目描述:编写程序来创建10个元素的vector对象,用迭代器把每个元素值改为当前元素的2倍。习题3.19:题目描述:验证习题3.18的程序,输出vector的所有元素。源码实现:#include #include using std::cin;using std::cout;using std::endl;using std::v

2015-05-14 16:18:26 944

原创 Linux系统分区

1. vmware虚拟机软件快照功能:类似于备份,可以快速启动克隆功能:链接克隆(依赖于原系统)、完整克隆(类似于复制,独立的)2. 分区 分区包括三类:主分区(primary partition)、扩展分区(extended partition)、逻辑分区(logical partition)1)主分区与扩展分区最多只能有四个,且扩展分区只能有一个。2)扩展分区不能格式化

2015-05-14 01:18:10 662

原创 《c++ primer》 习题3.13-3.16

习题3.13题目描述:读一组整数到vector对象,计算并输出每对相邻元素的和,如果读入元素个数为奇数,则提示用户最后一个元素没有求和,并输出其值。然后修改程序:头尾元素两两配对(第一个和最后一个,第二个和倒数第二个,以此类推),计算每对元素的和,并输出。源码解答:3.14读入一段文本到vector对象,每个单词存储为vector中的一个元素,把vector对象中的每个单词转化为大

2015-05-13 18:41:22 885

原创 《c++ primer》——3 标准库bitset类型

标准库bitset类型bitset类简化处理二进制位的有序集,每个位可能包含0和1。使用bitset类,包含相应的头文件:#include using std::bitset;bitset对象的初始化bitset类似于vector,也是一种标准库容器,只不过它的初始化需要声明的是bitset对象的长度而不是类型。给出的长度必须是一个常量表达式,整型字面值常量或是已用常量值初始

2015-05-13 17:58:23 572

原创 《c++ primer》——2 标准库vector类型和迭代器iterator

1.标准库vector类型Vector是同一种类型的对象的集合,每个对象都对应一个相应的索引值,同string对象一样,标准库将负责管理与存储元素有关的内存。Vector称之为容器。使用vector前,包含相应的头文件#include using std::vector;vector是一个类模板,因此可以定义string对象的vector,int对象的vector,或者是自

2015-05-12 21:30:31 722

原创 戏说Linux——unix和Linux发展史

Unix发展(1)1965年,美国麻省理工学院、通用电气公司及AT&T的贝尔实验室联合开发Multics工程计划,目标是开发一种交互式的具有多道程序处理能力的分时操作系统,目标过于庞大,计划破产。(2)1969年,美国贝尔实验室的肯汤普森(Kenneth Lane Thompson)开发了unix系统,未能得到有效的推广。(3)1971年,丹尼斯里奇(Dennis MacAlistai

2015-05-12 17:33:08 757

原创 《c++ primer》 习题3.7-3.10

3.7题目描述:编写一个程序读入两个string对象,测试它们是否相等。若不相等,则指出两个中哪个较大。接着,改写程序测试它们的长度是否相等,若不相等指出哪个较长。源码解答:#include #include using std::cin;using std::cout;using std::endl;using std::string;int main(){ /*

2015-05-12 16:46:40 676

原创 《c++ primer》-——1 标准库string类型

1.命名空间的using声明:之前在编写程序时使用std空间中的定义,采用的是std::cin>>a;std::cout作用域限定符::的含义是右操作数可以在左操作数中找到定义.显然这种方法比较复杂。C++提供了更为方便的方法使用命名空间的内容,using声明。Using name_space::name;后面在使用的时候,可以直接引用名字,而不需要再加上

2015-05-12 10:43:57 590

转载 程序员技术练级攻略

月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下。于是他给我发来了一些他的心得和经历

2015-05-12 00:32:27 575

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除