- 博客(23)
- 资源 (5)
- 收藏
- 关注
原创 linux程序设计——入门(第一章)
Nei Matthew和Richard Stones的《linux程序设计》(第四版),每一章记一些主要内容。Linux应用程序表现为两种特殊类型的文件:可执行文件和脚本文件。可执行文件是计算机可以直接运行的程序,它们相当于Windows中的.exe文件。脚本文件是一组指令的集合,这些指令将由另一个程序(即解释器)来执行,它们相当于Windows中的.bat文件,
2015-05-31 17:32:13 895
原创 linux快捷键
快捷键是个好东西,渣渣也学习linux快两周了,总结一点自己常用的快捷键,以后学到了再添加。(以Ubuntu14.04为准)1.长按Super键(即Window键),显示常用的键盘快捷键。同时还显示出左侧一列应用程序图标对应的数字,自上而下从1开始。2.组合Super键+Tab键 切换并打开应用程序3.组合Super键+数字 打开数字对应的应用程序(详见条目1)4.组合
2015-05-29 19:13:36 691
原创 linux修改用户名
前两天写过ubuntu修改用户名和主机名的文章,那时候对linux命令不熟悉,采用的方法是手动修改三个配置文件。现在这篇文章是在终端下使用usermod和groupmod命令修改。文章先概述怎样修改用户名(假设旧用户名为test,想要修改为新用户名love),后面阐述命令的含义。1.进入终端,输入:su -回车,接着输入密码,获取root权限。如下所示:2.输入:usermod -...
2015-05-28 15:35:27 59243 2
原创 99%都答不对的C++问题
下面问题的输出结果为? a = 0; cout 首先这个标题哗众取宠了,问题的实际意义也不大,只适合我这种渣渣分析学习。在学习类时,编写跟踪类的函数输出顺序的代码,发现一些奇怪的问题,然后抽象出来的问题。实际只是两方面的知识:cout的输出和前缀++和后缀++的重载。先看下面的问题,这是我另一个问题缩减版的一段代码:int test(int j){ cout <<
2015-05-28 10:20:34 976
原创 C++基类指针指向的派生类对象内存的释放
C++由于基类指针可以指向不同的派生类对象,因此当赋予基类指针不同的地址时,要注意之前的派生类对象的内存释放。int main(){ Parent* ptr = new Child1; Child2 myChild2; Child3 myChild3; ptr->show(); delete ptr; //位置1 ptr = &myChild2; ptr->show();
2015-05-27 16:43:25 5091
原创 vim基础学习
使用vs2010的话,可以安装vim的插件,下载地址为:Vim插件(VsVim)地址(这个插件是免费的,暂时支持Visual Studio 2015, 2013, 2012, 2010),下载之后,双击VsVim.vslx进行安装,安装好之后就可以在VS10中使用Vim,整个过程不超过3分钟。 当然也可以直接在windows上安装vim,强烈推荐这篇VIM (for windows)/文
2015-05-27 13:15:39 707
原创 ubuntu进入单机模式(单用户模式)--获取root用户
问题:当普通用户密码忘记或者普通用户无法登陆时,怎样获取root用户。以ubuntu14.04为例解决这个问题:1.开机,到此界面时,使用↓键选择Advanced options for ubuntu,按下回车键。2.如图使用↓键选择recovery mode,按下回车键。3.如图使用↓键选择root,按下回车键。4.输入root用户密码,即可进入root用户,
2015-05-26 14:11:24 16784
原创 ubuntu修改用户名和主机名|ubuntu进入单机模式(单用户模式)
问题:使用了一周Ubuntu14.04,感觉自己当初设置的用户名和主机名太长,想要修改。结果:一晚上就过去了,还是悲剧。google搜索:ubuntu修改用户名,看了排在第一位同学的文章,根据描述修改/etc/passwd和/etc/shadow,将其中的旧用户名修改为新用户名,修改完成之后重启,然后就悲剧了。虽然显示新用户名,但是输入密码之后,仍然停留在原界面,无法进入新用户下的
2015-05-26 11:51:52 3175 1
原创 linux入门基础——磁盘基本概念
磁盘基本概念计算机大多是使用机械硬盘(固态硬盘和USB盘一样是flash存储)cylinder柱面sector 扇区head 磁头磁盘在linux中的表示linux所有设备都被抽象为一个文件,保存在/dev目录下。设备名称一般为hd[a-z]或者sd[a-z]([a-z]为分区号),如:hda,hdb,sda,sdbIDE设备的名称为hd[a-z],SA
2015-05-26 11:19:43 523
原创 linux编译运行C/C++程序
在linux系统下编译运行C/C++程序。编译c程序使用gcc,编译C++程序使用g++,ubuntu14.04默认安装了gcc,但是没有安装g++。1.首先确定已经安装gcc/g++。使用whereis gcc或者whereis g++查看是否安装gcc/g++.命令如下:liu@liu:/$ whereis g++如果安装,则显示:g++: /usr/bin/g++ /
2015-05-26 11:12:28 2144
原创 linux入门基础——Vi(Vim)文本编辑器
VIM绝大多数Linux系统上均按装有vim,但是如果不安装vim的话,可以使用vi命令,但是不能使用vim命令,并且有一些功能可能不能使用(ubuntu14.04默认默认安装vim之后才可使用vim命令,可以在软件中心安装vim)命令vim可以启动vim编辑器一般我们通过vim+目标文件目录的形式使用vim如果目标文件存在,则vim打开该文件如果目标文件不存在,则vim自动创
2015-05-26 11:04:07 626
原创 linux入门基础——linux系统常用命令
inux常用命令日期时间命令date查看,设置当前系统时间:格式化显示时间:+%Y--%m--%d命令hwclock用以显示硬件时钟时间命令cal用以查看日历命令uptime用以查看系统运行时间输出,查看命令命令echo用以显示输入的内容命令cat用以显示文件内容命令more用于翻页显示文件内容(只能使用空格键向下翻页)命令less用于翻页显示文件内容(带上
2015-05-26 10:52:55 1009
原创 友元类成员的依赖关系|循环依赖
定义一个CBottle类,另一个类CCarton的某个成员对CBottle进行操作,因此在CBottle类中赋予CCarton成员的友元权利。我们很容易写出如下代码://CBottle类的头文件 bottle.h#include "carton.h"class CCarton;class CBottle{public: CBottle(double height, double
2015-05-26 10:17:21 1257
原创 windows如何在命令行下编译C/C++程序
windows如何在命令行下编译C/C++程序方法一是在Visual Studio中打开命令行,输入:cl hello.cpp所在路径\hello.cpp 或者cl /EHsc \hello.cpp方法一具体为:start->All programs->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio Comm
2015-05-25 16:43:05 2673
原创 linux入门基础——linux系统目录架构
linux树状文件系统结构/bin binary缩写,保存的是常用的可执行文件,即命令,我们所有的命令都在bin下面。boot 引导目录,操作系统的所有的引导文件都在boot里面。操作系统的内核,驱动,以及引导程序都在boot目录下面。boot也是启动的意思。dev device的缩写,即计算机的所有硬件设备,包括硬盘,光驱,软盘,终端,显卡等等。保存抽象着计算机
2015-05-22 17:36:46 1068
原创 类对象复制问题|类的临时对象|赋值重载函数
对象复制操作产生的系统开销很大,尤其是对象占用的内存是动态分配时。对象的复制是通过调用类复制构造函数完成的。赋值运算符涉及到对象的复制,有些情况可以避免对象复制的开销。#include #include using namespace std;#define GET_NAME(x) #xclass Test{public: Test(const char* text = "Def
2015-05-22 15:42:30 788
原创 类中重载赋值运算符
重载赋值运算符时,先根据传入的地址判断是否与自己相等,如果相等,则返回*this。否则,释放旧空间,申请新空间,复制数据,返回*this。 #include #include using namespace std;class CMessage{private: char* pMessage;public: CMessage(const char* text = "Def
2015-05-20 18:15:46 891
原创 linux入门基础——linux文件系统结构和基本操作管理
linux文件系统结构Linux文件系统为一个倒转的单根树状结构文件系统的根为“/”文件系统严格区分大小写路径使用“/”划分Linux树状文件系统结构/dev boot etc home usr var lib proc _当前工作目录每一个shell或系统进程都有一个当前工作目录使用pwd命令可以显示当前的工作目录文件名称文件的名称大小写敏感名
2015-05-20 14:38:44 531
原创 sizof类对象,类对象的内存
成员函数不影响类对象的大小,虚函数会增加类对象的大小(4字节)。然后上代码:#include using namespace std;class Test{};class Dest{public: Dest(){} ~Dest(){} void Print(){}};class Cest{public: int num;};class Best{public:
2015-05-18 17:57:17 577
原创 linux入门基础——命令行bash的基本操作
最近开始学习linux,使用u盘安装了Ubuntu12.04,装好之后又升级了14.04。正确安装的话应该很快,但我安装了好几次......第一次使用图书馆的wifi安装,没有安装好,结果不能连接wifi,卸载装了好几次,最后还是在宿舍连接网线才重装成功。 在网易云课堂边看视频边记笔记进行学习,网址是http://study.163.com/course/courseMain.htm
2015-05-18 13:34:51 578
原创 函数指针
指针存储的是变量的地址值,该变量具有与指针相同的基本类型。这样使我们能够通过一个指针在不同的时间使用不同的变量。指针还可以指向函数的地址,该功能使我们可以通过指针来调用函数,最近一次赋给指针的地址所包含的函数将被调用。显然,指向函数的指针必须包含我们想调用的函数的内存地址,但是为了正确运行,这种指针还必须包含被指向函数的形参列表以及返回类型等信息。因此,当生命函数指针时,除了指针名称以外,还必
2015-05-15 16:36:47 367
原创 函数返回指针|函数返回地址
函数返回局部自动变量的地址是严重的错误。但是我们可以返回动态分配的内存的地址,因为使用操作符new分配的动态内存一直存在,直到被delete销毁或者程序结束,不受函数作用域的影响。#include using namespace std;double* treble(double);char* fun1();char* fun2();int main(){ double
2015-05-12 13:34:43 3243
原创 字符数组和指针的sizeof(),strlen()以及getline()
char类型的数组被称为字符数组,用来存储字符串。字符串终止字符表明字符串已经结束,该字符由终止字符'\0'定义,占用一个字节。sizeof 是一个运算符,返回一个对象或者类型所占的内存字节数,应用于数组名称本身时,返回整个数组占用的字节数量。strlen 是一个函数,返回C字符串的长度,C字符串的长度是从字符串开始位置到字符串终止字符的长度(不包括终止字符)。
2015-05-08 14:39:44 603
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人