自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 C++(4)

1. 如果能作为左值则返回引用,例如a+b不能作为左值,a=b可作为左值,a++不能作为左值,其返回一个值,是常量,++a可作为左指,返回a这个变量2.当无法修改左操作数的类时,使用全局变量进行重载,如<<和>>,因为无法修改ostream和istream,只能用友元函数进行重载,若用成员函数,成员变量会作为左值,而在cout中,成员变量只能作为右值,发生冲突3.=...

2018-08-06 13:02:30 315

原创 C++(3)

1.对象初始化列表:当成员变量是一个对象,且该对象没有无参构造函数1.必须这样做:如果我们有一个类成员,它本身是一个类或者是一个结构,而且这个成员它只有一个带参数的构造函数,没有默认构造函数。这时要对这个类成员进行初始化,就必须调用这个类成员的带参数的构造函数,如果没有初始化列表,那么他将无法完成第一步,就会报错。 2、类成员中若有const修饰,必须在对象初始化的时候,给const ...

2018-08-06 09:38:23 211

原创 C++(2)

1.面向对象语言开发效率高,运行效率下降百分之十左右2.private 私有,类内部调用   protected 受保护(用于继承)   public 公有,内外都可以调用3.class中默认是私有权限  struct 中默认是公有的4.constructor 构造函数①不用用户调用,系统自动调用②名字与类名相同③无返回值(c++中唯一无返回值的函数) ...

2018-08-06 08:55:46 306

原创 面试题三

1.在主函数中会优先调用局部变量value,若没有才会调用全局变量,而函数printvalue()打印的是全局变,若无 全局变量则会编译报错2.i++与++i的效率问题内建数据类型的情况,效率没有区别自定义数据类型的情况,++i效率更高,因为前缀式可以返回对象的引用,而后缀式只能返回对象的值,所以导致在大对象的时候产生了较大的复制开销,引起效率较低 3.编程风格问题...

2018-08-02 09:36:24 177

原创 C

1.i++和++i哪个效率更高  (1)内建数据类型的情况,效率没有区别    (2)自定义数据类型的情况,++i效率较高。因为前缀式(++i)可以返回对象的引用,而后缀式(i++)必须返回对象的值,所以导致在大对象的时候产生了较大的复制开销,引起效率较低。 2.不使用中间变量将a,b值进行交换(1)a = a + b;   b = a - b;   a = a - b...

2018-08-02 09:14:20 893 1

原创 面试题二

1.转义字符【解释】首先要明确该字符串中包含的转义字符,”a \b re \’ hi \' y \\ \b ou \n”中的转义字符(带下划线的部分)共有6个,其中’\b’是退格符,输出时将光标往左边回退一个位置,‘\’’为单引号字符,’\\’为\字符,’\n’为回车换行符。所以显示的结果为C。 2.解释】因p是指针变量,在scanf中不能再使用&p或*p来接收...

2018-07-29 09:35:55 662

原创 面试题一

1.关于求质因数的程序 如20=2*2*5 2. 2 3 4 unsigned char *p1; unsigned long *p2; p1=(unsigned char *)0x801000; p2=(unsigned long *)0x810000; 请问p1+5= 什么?p2+5= 什么?...

2018-07-29 09:06:14 2056

原创 进程和线程的区别

(1)调度执行    线程是操作系统调度执行的最小单位,而进程是资源分配的最小单位。(2)资源拥有    线程一般不拥有资源,它的运行资源取决于其所属进程所拥有的资源。(3)地址空间    不同进程的地址空间是相互独立的,而属于同一进程的各线程共享地址空间(4)数量关系    一个进程可以包含一个或多个线程,一个进程中的线程对另一个进程是不可见的(5)通信关系 ...

2018-07-27 10:47:04 344

原创 sizeof和strlen的区别

(1)sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 (2)sizeof是运算符,strlen是函数。 (3)sizeof可以用数据类型做参数,如sizeof(char),strlen只能用char*类型做参数,且必须是以''\0''结尾的。sizeof还可以用函数做参数,比如: ...

2018-07-25 09:52:19 120

原创 const和define的区别

(1)编译器处理方式不同define宏是在预处理阶段展开;const常量是在编译运行阶段使用;(2)数据类型和安全检查不同define宏没有数据类型,不做任何类型检查,仅仅是展开。const常量有具体的数据类型,在编译阶段会执行类型安全检查。(3)存储方式不同define宏在定义时不会分配内存,它存在于程序的代码段;define宏仅仅是展开,有多少地方使用,就展开多少次...

2018-07-25 09:38:08 424

原创 C++(1)

#include <iostream>using namespace std;int aaaa;//不赋值 直接输出它的值的时候,因为是全局变量 所以默认给了值 0,如果是局部变量 那么就是一个垃圾值//在C中全局变量可以重复定义 后定义的覆盖前面的 但是 C++不行 检测机制更加严格namespace A{    int a = 1;    void print(...

2018-07-19 09:46:34 296

原创 网络编程2

一、基本的udp socket编程1. UDP编程框架要使用UDP协议进行程序开发,我们必须首先得理解什么是什么是UDP?这里简单概括一下。UDP(user datagram protocol)的中文叫用户数据报协议,属于传输层。UDP是面向非连接的协议,它不与对方建立连接,而是直接把我要发的数据报发给对方。所以UDP适用于一次传输数据量很少、对可靠性要求不高的或对实时性要求高

2017-12-07 13:34:29 197

原创 网络编程1

1. 网络中进程之间如何通信网间进程通信要解决的是不同主机进程间的相互通信问题(可把同机进程通信看作是其中的特例)。为此,首先要解决的是网间进程标识问题。同一主机上,不同进程可用进程号(process ID)唯一标识。但在网络环境下,各主机独立分配的进程号不能唯一标识该进程。 其次,操作系统支持的网络协议众多,不同协议的工作方式不同,地址格式也不同。因此,网间进程通信还要解决多重协议的

2017-12-07 13:30:02 506

原创 作业

1、简述Linux进程内存空间分为哪几个段?作用分别是什么? 答:Linux中的进程包含3个段,分别为“数据段”、“代码段”和“堆栈段”。“数据段”:已被初始化的变量,包括全局变量和已被初始化的静态变量;未初始化数据段,存储未被初始化的静态变量,又称BBS;“代码段”存放的是程序代码的数据;“堆栈段”存放的是子程序的返回地址、子程序的参数以及程序的局部变量等。 

2017-12-07 13:00:17 328

原创 多线程

1. 线程和进程的区别:进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。线程通常叫做轻型的进程。线程是在共享内存空间中并发执行的多道执行路径,他们共享一个进程的资源。线程和进程比起来很小,所以相对来说,线程花费更少的CPU资源。  2.如何来标识一个线程?   表示进程号的为pid_t类型,表示线程号的是pthread_t类型;

2017-12-01 13:15:20 117

原创 linux进程通信2

1. 何为消息队列? 消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法。  每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构。我们可以通过发送消息来避免命名管道的同步和阻塞问题。但是消息队列与命名管道一样,每个数据块都有一个最大长度的限制。           2. 消息队列的该如何应用? 消息队列是链表队列,它通

2017-12-01 13:14:18 148

原创 linux进程通信1

1. Linux下进程间通信方式有有那些?1.1管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。 1.2有名管道(named pipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。 1.3信号量( semophore ): 信号量是一个计数器,可

2017-12-01 13:12:52 171

原创 linux文件操作

一. Linux下文件的该概念是什么?Linux中的文件具有的特点是:可通过操作系统或者程序对外提供信息,也能对内输入信息,可以被创建,删除。Li n u x中,文件有特别重要的意义,他们为操作系统和设备提供了一个简单而统一的接口。在Linux中,几乎一切都可以看做是文件 。这就意味着,普通程序完全可以像使用文件(普通定义)那样使用磁盘文件、串行口、打印机和其他设备。硬

2017-11-24 12:55:41 404

原创 linux进程

一. 进程控制中的专有名词多用户:多个用户同一时间使用计算机多任务:同时执行几个任务,并且可以在还没有执行完一个任务的时候执行另一个任务程序:静态,保存在硬盘上的可执行代码进程:动态,运行中的程序,表示过程(操作系统资源管理的最小单位)线程:在进程内部,比进程更小的能独立运行的基本单位实际用户:标识运行该进程的用户有效用户:标识来运行该进

2017-11-22 21:49:56 188

原创 栈的相关知识

一.栈的定义栈是限制仅在表的一端进行插入和删除运算的线性表又称为后进先出表(LIFO表)。插入、删除端称为栈顶,另一端称栈底。表中无元素称空栈。 二.栈的逻辑结构和存储表示栈的逻辑结构和线性表相同。栈的抽象数据类型有两种典型的存储表示:基于数组的存储表示和基于链表的存储表示。(1)基于数组的存储表示实现的栈称为顺序栈,顺序栈可以采用顺序表作为其存储表示,因此,可

2017-11-03 15:29:32 355

原创 线性表

1.基本概念线性表(List):由零个或多个数据元素组成的有限序列。 2.注意:1.线性表是一个序列。2.0个元素构成的线性表是空表。3.线性表中的第一个元素无前驱,最后一个元素无后继,其他元素有且只有一个前驱和后继。4.线性表是有长度的,其长度就是元素个数,且线性表的元素个数是有限的,也就是说,线性表的长度是有限的。如果用数学语言来进行定义,可如下:若

2017-10-26 17:21:36 568

原创 结构体

1.什么是结构体结构体是一种专门设计用来存储不同数据类型元素集合结构体与数组的对比:1)都由多个元素组成2)各个元素在内存中的存储空间是连续的3) 数组只能由多个相同类型的数据构成, 结构体可以由多个不同类型的数据构成。2.结构体的格式 结构体内部的元素,也就是组成成分,我们一般称为"成员"。结构体的一般定义形式为:   struct 结构体名{  

2017-10-26 17:09:24 213

原创 函数的相关知识

一.程序如何实现模块化在程序设计过程中大多数程序要比我们之前设计的程序复杂的多,传统的设计方法是“自定向下,逐步求精”的过程。该过程就是将一个大的问题按照层次分解成多个方便解决的小问题,直至各个功能模块,每个单独的功能模块可以单独设计,最后将所有的功能模块有机的结合成完整的程序。 二.函数如何进行定义1函数简介:函数是C语言程序的基本模块,函数一般可以从3中角度进行分类:从函数

2017-10-19 20:03:55 301

原创 指针

一.指针的类型从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。这是指针本身所具有的类型。例:(1)int*ptr; //指针的类型是int*(2)char*ptr; //指针的类型是char*(3)int**ptr; //指针的类型是int**(4)int(*ptr)[3]; //指针的类型是int(*)[3](5)int*(*p

2017-10-19 19:59:36 1106

原创 10.13日课程复习

一、shell1.shell的定义:shell是一个命令解析器,将用户输入的指令转化为机器可以运行的程序2.shell中的默认变量     $# :传入脚本的命令行参数个数     $* :所有输入的命令行参数值(在各个参数值之间留有空格)     $?:保存返回值     $0 :命令本身(shell文件名)     $1:第一个命令行参数

2017-10-14 15:56:32 537

原创 linuxC语句

1.程序的三种结构顺序结构、分支结构、循环结构 2.语句的分类空语句、基础语句(表达式语句、函数调用语句)、语句if、跳转语句goto、循环语句(for、while、do-while)、break和continue、switch3.空语句只有分号组成的语句叫空语句。空语句的一般用途:(1)纯粹消耗CPU时间,起延时作用 (2)为了程序

2017-10-08 18:27:34 306

原创 llinux C运算符表达式

1.运算符分类      (1)算术运算符:用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)(2)关系运算符:用于比较运算,包括大于(>)、小于()、等于(==)、大于等于(>=)、小于等于()和不等于(!=)(3)逻辑运算符:用于逻辑运算,包括与(&&)、或(||)、非(!)(4)位操

2017-10-08 17:45:59 1091

原创 linux C数据结构类型

1.C语言里面如何计算数据类型取值范围及其大小类型说明符数的范围字节数int-231~(231-1)4unsigned int0~65535即0~(216-1)4

2017-10-08 16:01:25 459

原创 makefile&gdb

MakefileMake工程管理器的优越性具体体现在以下两方面:(1)使用方便      通过命令“make”就可以启动Make工程管理器对程序进行编译,所以不再需要每次都输入gcc命令行。Make启动后会根据Makefile文件中的编译规则命令自动对源文件进行编译和链接,最终生成可执行文件。(2)调试效率高   

2017-10-05 13:44:44 362

原创 gcc

GCC在linux平台上,最流行的编译系统是GCC。GCC也是GNU发布的最著名软件之一。GCC的功能非常强大,主要体现在两方面。   (1)GCC可以为X86、ARM、MIPS等不同体系结构的硬件平台编译程序。   (2)GCC可以编译C、C++、JAVA、Pascal等数十种不同的高级语言。gcc命令的使用格式格式为:

2017-10-04 18:42:03 464

原创 linux关于系统管理、系统安全相关命令

系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、cromtab系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo、ps、who df1.作用:df命令用来检查文件系统的磁盘空间占用情况,使用权限是所有用户。2.格式d

2017-10-03 15:53:17 358

原创 linux关于文件处理的命令

文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln

2017-10-02 14:05:54 487 1

空空如也

空空如也

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

TA关注的人

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