QT实现简单计算器

一、模块图 二、核心算法 —– 中缀表达式转化为后缀表达式 1、将中缀表达式转换为后缀表达式的算法思想: 1)计算机实现转换: ·开始扫描; ·数字时,加入后缀表达式; ·运算符: a. 若为 ‘(‘,入栈; b. 若为 ‘)’,则依次把栈中的的运算符加入后缀表达式中,直到...

2018-01-29 10:22:50

阅读数 2241

评论数 0

智能指针再解剖

智能指针模拟实现: http://blog.csdn.net/snow_5288/article/details/53262810在以上文章中,我们对库里的某些智能指针进行了模拟实现,今天就来学习解剖一下库里的智能指针的实现和使用。一、总括对于编译器来说,智能指针实际上是一个栈对象,并非指针类型,...

2017-09-21 13:07:45

阅读数 457

评论数 0

Web bench源码剖析

一、Web bench是什么? 首先提一个概念—-压力测试。 在运维工作中,压力测试是一项很重要的工作。比如在一个网站上线之前,能承受多大访问量、在大访问量情况下性能怎样,这些数据指标好坏将会直接影响用户体验。但是,在压力测试中存在一个共性,那就是压力测试的结果与实际负载结果不会完全相同,就算...

2017-09-11 22:10:01

阅读数 876

评论数 0

C/C++容易混淆的小知识点

1、函数传指针和传引用的区别? 1>指针定义时可以不初始化,但引用不行; 2>引用只能和一个实体结合,而指针可和多个实体结合; 3>自加减意义不同。指针的++表示指针向后偏移类型个字节,而引用则是+1,–类似; 4>sizeof求值的意义不同。Sizeof(指针)是...

2017-08-12 19:27:57

阅读数 1656

评论数 4

快速排序的三种实现及两种优化

一、快速排序的概念快速排序(Quicksort)是对冒泡排序的一种改进。快速排序由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过...

2017-08-05 20:52:05

阅读数 3271

评论数 0

单例模式详解

一、什么是单例模式1、定义 官方定义是这样的,单例模式是一种常用的软件设计模式,也叫单件模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例...

2017-07-31 01:33:13

阅读数 1165

评论数 0

实现1+2+3...+n,要求不能使用乘除法、循环、条件判断、选择相关的关键字(for、while、if、else、switch、case)。

解法1:利用递归(&&的短路特性)&&的短路特性:即A&&B中,加入A为假,那么B就不会被运算,因此我们只要将递归放在B中,而将终止条件放在A中即可解决该问题。。。 1 /**************************************...

2017-07-15 13:59:12

阅读数 1412

评论数 14

网络基础(一)

一、网络分层1、OSI网络分层 OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型 ,是一个逻辑上的定义,一个规范,它把网络从逻辑上分为了7层。每一层都有相关、相对应的物理设备,比如路由器,交换机。OSI 七层模型是一种框架性的设...

2017-07-07 15:04:40

阅读数 675

评论数 0

循环冗余校验(CRC校验)

一、循环冗余校验的作用在网络传输过程中,我们可能会遇到或多或少的差错,所谓差错,是指接收端收到的数据和发送端实际发送的数据出现不一致的现象,凡是出现差错的地方,我们都应对其进行差错控制。差错控制的作用与机制: 差错控制是采用可靠、有效的编码以减少或消除计算机通信系统中传输差错的方法,其目的在于提...

2017-06-19 20:02:43

阅读数 946

评论数 0

端口

一、端口是什么“端口”是英文port的意译,可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。例如计算机中的80端口、21端口、23端口等。物理端口又称为接口,是可见端口,计算机背板的RJ45网口,交换机路由器集线器等RJ45...

2017-06-19 18:19:08

阅读数 834

评论数 4

Linux下的系统编程总结

1、基本指令,5个背景知识(OS,环境变量,文件类型,shell运行原理,文件权限) linux常见指令以及权限理解 Linux下的权限管理与相关时间概念 Linux下的find指令 Linux下的黏滞位(Sticky bit)2、开发环境(vim、gcc,g++,gdb,ctags,ma...

2017-06-18 15:40:29

阅读数 957

评论数 1

Linux下的终端和作业控制

一、进程间的关系进程间的三种关系:进程组、作业和会话。 1、进程组 每个进程除了有一个进程ID之外,还属于一个进程组。进程组是一个或多个进程的集合。通常,它们与同一作业相关联,可以接收来自同一终端的各种信号。每个进程组有一个唯一的进程组ID。每个进程组都可以有一个组长进程(该组进程的第一个,组...

2017-06-18 15:21:35

阅读数 1085

评论数 0

Linux下的守护进程

一、什么是守护进程1、守护进程的引入 在现实生活中, 许多大型的软件或服务器必须保证7*24小时(一周7天,一天24小时)无障碍的运行,例如淘宝网、百度搜索引擎、支付宝等等,那么像这样一种要一直运行的程序怎么实现呢?究其本质其实就是我们的守护进程。2、守护进程的定义 守护进程也称精灵进程(D...

2017-06-18 11:06:56

阅读数 1490

评论数 0

Linux下的进程概论与编程三(进程间通信的5种方式)

Linux下的进程概论与编程一(进程概念与编程)Linux下的进程概论与编程二(进程控制)一、进程间通信1、IPC—-InterProcess Communication 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到所以进程之间要交换数据必须通过内核,在内核中开...

2017-06-15 22:37:36

阅读数 3358

评论数 0

Linux下的进程概论与编程二(进程控制)

Linux下的进程概论与编程一(进程概念与编程)一、进程标识符1、每个进程都有非负的整形表示唯一的进程ID。 几个典型进程的ID及其功能: 2、除了进程ID,每个进程还有一些其他的标识符。 下列函数返回这些标识符:#include <sys/types.h> #include &...

2017-06-14 21:06:10

阅读数 424

评论数 0

Linux下的进程概论与编程一(进程概念与编程)

一、典型的Linux结构最简单也是最复杂的操作: 二、进程的概念1、进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是...

2017-06-14 18:04:02

阅读数 578

评论数 0

Linux下的多线程编程二(线程的同步与互斥)

一、什么叫做线程的同步与互斥?为什么需要同步与互斥? 二、互斥量 三、条件变量 四、信号量 五、读写锁

2017-06-14 14:53:47

阅读数 1779

评论数 0

Linux下的多线程编程一(系统编程)

一,线程的基本概念 1,线程的定义: 线程也被称为轻量进程(LWP)计算机科学术语,指运行中的程序的调度单位。线程是进程中的实体,一个进程可以拥有多个线程,一个线程必须有一个父进程。线程不拥有系统资源,只有运行必须的一些数据结构;它与父进程的其它线程共享该进程所拥有的全部资源。线程可以创建和撤...

2017-06-11 21:30:29

阅读数 3960

评论数 0

子进程的异步等待方式

一,基础知识1,进程的各种状态 S:浅度睡眠,可以中断,可以杀死,暂停,修改等; D:深度睡眠,不可中断,永远不可变;2,僵死状态(Zombies)一个比较特殊的状态。 指子进程结束运行(exit(0))后,系统将会保留子进程的描述符信息(没有被回收,其他进程不可以重用该描述符),当进程退...

2017-06-11 11:45:02

阅读数 811

评论数 0

gdb调试多进程与多线程

一,gdb的基础知识1>介绍: gdb是Linux环境下的代码调试工具。 2>使用:需要在源代码生成的时候加上 -g 选项. 3>开始使用: gdb binFile 4>退出:ctrl + d 或 quit 5>调试过程中的常用命令: list/l 行号:...

2017-06-10 16:32:25

阅读数 11415

评论数 6

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