- 博客(21)
- 收藏
- 关注
原创 C++中的单例模式
C++中的单例模式软件开发常用设计模式—单例模式总结(c++版)单例模式:就是只有一个实例。singleton pattern单例模式:确保某一个类在程序运行中只能生成一个实例,并提供一个访问它的全局访问点。这个类称为单例类。如一个工程中,数据库访问对象只有一个,电脑的鼠标只能连接一个,操作系统只能有一个窗口管理器等,这时可以考虑使用单例模式。众所周知,c+
2016-08-27 20:20:47 532 1
原创 Linux(5)——进程的状态(非常详细)
Linux 进程状态Linux是个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。 在下文将对进程的R、S、D、T、Z、X 六种状态做个说明。一、 进程状态:S(state): R:运行状态(runable) 进程处于运行或就绪状态,R Running or runnable
2016-08-25 22:25:47 1564
原创 Linux(4)——进程的创建
一、进程的创建1、一个进程的创建主要有两个步骤:一是找到一个空闲进程资源(find_empty_process),Linux0.11来说可以同时运行的进程数目是64个,是有限的,因此需要先得到一个空闲的进程表中的一项用来索引即将创建的进程信息;第二个主要步骤就是复制(copy_process),这个函数具体来实现子进程基于父进程的复制创建。主要包括的步骤和内容是:1) 为
2016-08-25 22:25:00 357
原创 Linux(3)——了解进程和PCB的概念
一、概念1、操作系统的职能:进程管理、内存管理、设备管理、文件管理 。操作系统对用户提供操作和接口。二、进程的概念:我们知道操作系统最核心的概念就是进程。其实进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代
2016-08-25 22:24:14 627
原创 Linux(2)——环境变量
一、环境变量1、定义:环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除
2016-08-25 22:23:12 317
原创 Linux(1)——权限的概念和思想、Linux文件权限与目录管理
一、常见概念1、这里的存储器指内存。2、CPU读取的数据都是从内存中出来的,CPU处理完成的数据,必须要先写回内存,最后数据才从内存中传输到输出单元(忽略缓存)。3、操作系统是用来管理软硬件资源的。Linux是操作系统中的一种。操作系统是搞管理的,不直接和硬件打交道,而是通过数据和驱动程序管理软硬件资源。4、驱动程序:帮助操作系统管理软硬件资源(操作系统是搞管理的,他不直接去管
2016-08-25 22:22:07 335
原创 Linux下的find指令(文件查找)用法
前言:我们为什么要学会使用find命令? 每一种操作系统都有成千上万的文件组成,对于linux这样“一切皆文件”的操作系统来说更不例外,大家应该都能很轻松使用windows下的文件查找功能,但是对linux这一功能可能并不是很熟悉,其实想玩linux的你更要牢牢掌握这个命令,因为linux不像windows那样有固定的文件名后缀,并且因为linux阵营下百家争鸣的特性,一个相同的文件在不
2016-08-24 13:40:25 1896
原创 Linux文件的三个时间详解
一、Linux下文件三个时间的查看linux下使用stat命令获取文件的三个时间,各时间的含义时间名称简称中文名称含义linux 命令备注access timeatime访问时间最后一次访问文件或目录的时间ls -lu filename注意,访问时间的更新并不是实
2016-08-22 19:55:06 360
原创 浅谈C++中指针和引用的区别
指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int *p=&a;int a=1;int &b=a;
2016-08-09 09:16:53 248
原创 自己实现的atio()和atof()函数
函数名:myatoi功能:把字符串转化成int整型 名字来源:my array to integer 函数说明:接收一个字符串判断第一个字符的符号,没有符号默认为正值,然后对剩 余字符串进行转换,//遇到\0结束,最后返回一个intint myatoi(const char* sptr) { bool ispnum=true
2016-08-08 23:42:42 509
原创 线索化二叉树、线索二叉树的遍历
树型结构是一类重要的非线性数据结构。其中以树和二叉树最为常用。树是以分支关系定义的层次结构。(1)、树树结构的应用:计算机领域在编译程序中,可用树来表示源程序的语法结构。数据库系统中可用树来组织信息,人类族谱,组织机构组织形式。树的定义是用递归定义的,当然树还可以有其他的表示形式,如:嵌套集合、广义表、凹入表示法等。一般来说,分等级的分类方案都可以用层次结构来表示,也就是说,都可导
2016-08-08 14:10:10 944
原创 二叉树的创建
二叉树:二叉树作为数据结构的树中的一个分支,非常的重要。二叉树的概念这里就不在赘述。二叉树是采用递归定义的,代码实现起来简洁(其实也并不简单),并且它在具体的计算科学中有很重要的应用,是一种非常重要的数据结构。二叉树的创建:1、二叉树是有节点构成的,每个节点又都可以看做一个三元组。包括:数据域、左指针域、右指针域。2、二叉树可以在类中去创建,包括构造函数、拷贝构造函数、析构
2016-08-08 13:12:53 334
原创 二叉树的创建、(七种)遍历
这一篇博客主要总结一下二叉树的创建、遍历以及整个流程。会对二叉树的遍历进行总结,二叉树可是有七种(三大类)遍历方式的!科普:树形结构是一类重要的非线性数据结构,其中以树和二叉树最为常用。二叉树是每个结点最多有两个子树的有序树。通常子树的根被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用作二叉查找树和二叉堆或是二叉排序树
2016-08-08 13:12:22 499
原创 定义和声明的区别
在初学C语言的时候,很多同学都分不清什么是定义?什么是声明?在此我就对定义和声明区别与联系说明下,希望对各位未来的同仁能有所帮助。定义:定义就是创建一个对象,并且为这个对象起名字和分配内存空间。需要注意的是:这个名字和这个分配的空间匹配起来,就同生共死了,而且这块内存空间的位置也不能改变。一个变量或对象在一定的区域内只能被定义一次。这就像是出嫁的女生(名字)一样,嫁给了丈夫
2016-08-08 13:11:58 217
原创 什么是递归?——浅显易懂
什么是递归?if (你懂)点这里: 点击打开链接else点进去就知道了: 点击打开链接如果你看完上面的说明,下面的解释将会让你领悟递归的真谛!递归是设计和描述算法的一种有力的工具,由于它在复杂算法的描述中被经常采用,为此在进一步介绍其他算法设计方法之前先讨论它。 能采用递归描述的算法通常有这样的特征:
2016-08-08 13:11:46 1489
原创 C/C++struct与C++中的struct/class
(1)、C/C++中的structC中的struct只是一个简单单单结构体,其中只能声明变量,而不能声明函数,而C++中的struct中却可以有函数。C++中struct成员默认访问权限为public,这是为了兼容C。在C中没有访问权限这一说。(2)、C++中的struct/class(转)1.字面上的区别在字面上struct是structure的缩
2016-08-08 13:11:32 426
原创 sizeof()和strlen()的区别与联系
一、sizeofsizeof(...)是运算符,返回值为size_t,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。size_t获得保证能容纳实现所建立的最大对象的字节大小。由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占...
2016-08-08 13:11:02 300
原创 怎样防止头文件被重复包含?(两种方式)以及它的影响
一、头文件被重复包含#include文件的一 个不利之处在于一个头文件可能会被多次包含,为了说明这种错误,考虑下面的代码:#include "x.h"#include "x.h"显然,这里文件x.h被包含了两次,没有人会故意编写这样的代码。但是下面的代码:#include "a.h"#include "b.h"看上去没什么问题。如果a.h和b.h
2016-08-06 10:38:02 23581 5
原创 你的机器是大端还是小端?
你的机器是大端还是小端?——测试一下你就知道。大端模式(Big-endian):是指数据的低位(就是权值郊县的后面那几位)保存在内存的高地址中;而数据的高位,保存在内存的低地址中。这样的恶存储方式有点儿类似把数据当做字符串顺序处理:地址由小向大增加,而数据从高位往低位放。小端模式(Little-endian):是指数据的低位保存在内存的低地址中;而数...
2016-08-06 10:16:09 894
原创 标准C++STL中的容器类简单介绍
STL-------Standard Template Library(标准模板库)。所谓的STL容器,即是将最常运用的一些数据结构(data strucres)实现出来。容器是指容纳特定类型对象的集合。依据数据在容器中的排列的特性,容器可分为序列式和关联式两种。迭代器是一种检查容器内元素并遍历元素的数据类型它提供类似指针的功能,对容器的内容进行访问。#include比如:
2016-08-03 11:22:31 458
原创 C++中的STL简介及使用说明
一、C++中的STL的简介引言:作为C++标准不可缺少的一部分,STL应该是渗透在C++程序的角角落落里的。 这篇博客的目的是传播和普及STL的基础知识,若能借此机会为STL的推广做些力所能及的事情,倒也是件让人愉快的事情。1、一个最关心的问题:什么是STL?全称为 Standard Template Library ,即标准模板库。坦率
2016-08-03 10:38:20 772
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人