自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

原创 链表相关操作

#include <stdio.h>#include <stdlib.h>#include <string.h> typedef struct MyStruct{char Lience[10];char Name[20];int Money;int Vip;struct MyStruct *next;} Node;...

2018-08-12 15:47:04 243 1

原创 三次握手与四次挥手

注:三次握手和四次挥手本身并不复杂,但却可以从很多角度理解这两个过程,本文仅取一个视点解读,如有其它看法欢迎留言交流。 三次握手与四次挥手分别对应TCP连接建立过程与断开过程,先上TCP报文格式: 三次握手过程: 问题1: 为什么要三次握手?答:三次握手的目的是建立可靠的通信信道,说到通讯,简单来说就是数据的发送与接收,而三次握手最主要的目的就是双方确认自己与对...

2018-08-10 21:20:50 238

原创 指针与引用的区别

指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int *p=&a;int a=1;int &b=a;...

2018-08-10 21:14:13 613

原创 Linux网络编程 套接字

一:概述    Socket 的英文原意就是“孔”或“插座”,现在,作为BSD UNIX 的进程通讯机制,取其后一种意义。日常生活中常见的插座,有的是信号插座,有的是电源插座,有的可以接受信号(或能量),有的可以发送信号(或能量)。假如电话线与电话机之间安放一个插座(相当于二者之间的接口,这一部分装置物理上是存在的)则Socket 非常相似于电话插座。    将电话系统与面向连接的Socke...

2018-08-10 16:12:50 174

原创 STL简介

1.1 什么是STL?STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。它被容纳于C++标准程序库(C++ Standard Library)中,是ANSI/ISO C++标准中最新的也是极具革命性的一部分。该库包含了诸多在计算机科学领域里所常用的基本数据结构和基本算法。为广大C++程序员们提供了一个可扩展的应用框架,高度体现...

2018-08-07 14:54:55 1656

原创 51单片机

考虑到博客内容的太单调,我就新开了一个系列:51单片机系列单片机的控制方法还是使用C语言来控制所以在C语言这里新开一个系列;和C语言的程序相比,51单片机的执行更加趋向于过程而非结果,也就是说单片机输出结果的方法使用执行程序的过程,也就是说一次一次的执行这个程序,来体现所需要的结果;和只需要执行一次程序就得到结果的C语言程序不同,单片机需要一次一次的循环执行程序,故单片机的程序结构大体是这样的...

2018-07-21 20:26:41 785

原创 dxp常用元件

序号 英文简写 元件英文名 元件中文名 1 Res semi Semiconductor Resistor 半导体电阻 2 Cap semi Semiconductor Capacitor 半导体电容器 3 Cap Var Variable or Adjustable Capacitor 可变或可调电容 4 ...

2018-07-21 19:26:12 1715

原创 查找算法练习题

1、在对有二十个数据有序表作二分查找时有___________个结点的查找长度是4.2、用折半查找法的查找速度比用顺序查找法的查找速度_________.     A  必然慢  B必然快    C速度相等     D   快慢不定3、写出从循环单链表中查找出最大值的算法.4、写出从循环单链表中查找出最小值的算法 .5、适合折半查找的表的存贮方式及元素排列要求为(     )      A、  链...

2018-06-05 20:04:46 14716

原创 c++模板

PS:今天在网上看到一篇讲C++模板编程的博客,还算是比较的通俗易懂,在这里留一份,没事看看。。。。。。 当我们越来越多的使用C++的特性, 将越来越多的问题和事物抽象成对象时, 我们不难发现:很多对象都具有共性。 比如 数值可以增加、减少;字符串也可以增加减少。 它们的动作是相似的, 只是对象的类型不同而已。C++ 提供了“模板”这一特性, 可以将“类型” 参数化, 使得编写的代码更具有通用性。...

2018-04-19 20:29:13 134

原创 C++类的基础实现(Company)

#include <iostream>#include <cstring>using namespace std;class Sale     //销售额{    protected:        int m_sale;        static int all_sale;      public:        Sale(int s)        {        ...

2018-04-17 18:45:44 2035

转载 C++之继承与多态

C++之继承与多态 在程序设计领域,一个广泛认可的定义是“一种将不同的特殊行为和单个泛化记号相关联的能力”。和纯粹的面向对象程序设计语言不同,C++中的多态有着更广泛的含义。除了常见的通过类继承和虚函数机制生效于运行期的动态多态(dynamic polymorphism)外,带变量的宏,模板,函数重载,运算符重载,拷贝构造等也允许将不同的特殊行为和单个泛化记号相关联,由于这种关联处理于编译期而...

2018-04-03 19:54:54 181 1

原创 C++ class实现链表

#include <iostream>#include <cstring>#include<cstdlib>using namespace std;class LinkNode{    private:      char m_name[20];      int m_age;      LinkNode *m_next;    public:      Lin...

2018-04-03 19:52:08 3606

转载 C++ 类&对象

C++ 类 & 对象C++ 在 C 语言的基础上增加了面向对象编程,C++ 支持面向对象程序设计。类是 C++ 的核心特性,通常被称为用户定义的类型。类用于指定对象的形式,它包含了数据表示法和用于处理数据的方法。类中的数据和方法称为类的成员。函数在一个类中被称为类的成员。C++ 类定义定义一个类,本质上是定义一个数据类型的蓝图。这实际上并没有定义任何数据,但它定义了类的名称意味着什么,也就...

2018-03-29 17:13:29 201

转载 C++面向对象基础

面向对象编程基础面向对象编程基于三个基本概念:数据抽象-类继承-基类/派生类动态绑定-基类的函数or派生类的函数面向对象编程概述面向对象编程的关键思想是多态性(polymorphism)。多态性派生于一个希腊单词,意思是“许多形态”,之所以称通过继承而相关联的类型为多态类型,是因为在许多情况下可以互换地使用派生类型或基类型的“许多形态”。在C++中,多态性仅用于通过继承而相关联的类型的引用或指针。...

2018-03-18 08:46:19 463

转载 c语言面试题1

> 预处理器(Preprocessor) 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)     #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将为你计算常数表达式的值,因此,...

2018-02-21 14:18:46 174

原创 同步IO与异步IO的区别

异步文件IO也就是重叠IO。在同步文件IO中,线程启动一个IO操作然后就立即进入等待状态,直到IO操作完成后才醒来继续执行。而异步文件IO方式中,线程发送一个IO请求到内核,然后继续处理其他的事情,内核完成IO请求后,将会通知线程IO操作完成了。如果IO请求需要大量时间执行的话,异步文件IO方式可以显著提高效率,因为在线程等待的这段时间内,CPU将会调度其他线程进行执行,如果没有其他线程需要执行的...

2018-02-21 13:46:21 7915

原创 笔试题之bool,int,float,pointer与“0”比较的语句

分别写出BOOL,int,float,指针类型的变量a 与“零”的比较语句。答案:BOOL :    if ( !a ) or if(a)int :     if ( a == 0)float :   const EXPRESSION EXP = 0.000001          if ( a -EXP)pointer : if ( a != NULL) or

2018-02-01 13:56:56 1070

原创 C语言初学的内存问题

内存分配有三种方式:一:从全局存储区域分配:这时内存在程序编译阶段就已经分配好,该内存在程序运行的整个周期都有效,如:全局变量、static静态变量。二:从栈区分配:在执行函数的时候,函数中的局部变量的存储单元都可以从栈中分配,函数执行结束后这些存储单元都会被自动释放,实现从栈中分配存储单元运算操作内置于处理器的指令集中,效率很高 但是分配的内存容量有限。三:从堆中分配:也称为动态内存

2018-02-01 13:52:02 398

转载 sizeof与strlen的区别

char str[20]="0123456789"; int   a=strlen(str); /*a=10;strlen 计算字符串的长度,以\0'为字符串结束标记。 int   b=sizeof(str); /*b=20;sizeof 计算的则是分配的数组str[20] 所占的内存空间的大小,不受里面存储的内容影响==================================

2018-02-01 13:26:43 117

转载 库函数与系统调用的联系与区别

一. 概念系统调用(英语:system call),指运行在用户空间的应用程序向操作系统内核请求某些服务的调用过程。 系统调用提供了用户程序与操作系统之间的接口。一般来说,系统调用都在内核态执行。由于系统调用不考虑平台差异性,由内核直接提供,因而移植性较差(几乎无移植性)。库函数(library function),是由用户或组织自己开发的,具有一定功能的函数集合,一般具有较好

2018-02-01 11:36:50 893

原创 消息队列的函数

ftok()#include #include 函数原型: key_t  ftok( const  char * pathname , int   proj_id  );参数: pathname 就时你指定的文件名(该文件必须是存在而且可以访问的),id是子序号,虽         然为int,但是只有8个比特被使用(0-255)。返回值: 成功时候返回

2018-01-30 16:51:23 983

原创 链表实现123报数游戏

基本思想:建立循环链表,并在所有节点数据域中赋值为0;建立while循环,判出条件为n(节点个数)减到1#include #include typedef struct Node{    int order;    int num;    struct Node* next;}LinkNode,*LinkList;void print(LinkNode* L

2018-01-28 20:27:46 713

转载 时间片轮转法

时间片轮转法(Round-Robin,RR)主要用于分时系统中的进程调度。为了实现轮转调度,系统把所有就绪进程按先入先出的原则排成一个队列。新来的进程加到就绪队列末尾。每当执行进程调度时,进程调度程序总是选出就绪队列的队首进程,让它在CPU上运行一个时间片的时间。时间片是一个小的时间单位,通常为10~100ms数量级。当进程用完分给它的时间片后,系统的计时器发出时钟中断,调度程序便停止该进程的运行

2018-01-28 20:11:48 6731

原创 typedef常见用法

typedef常见用法1.常规变量类型定义例如:typedef unsigned char uchar描述:uchar等价于unsigned char类型定义 uchar c声明等于unsigned char c声明2.数组类型定义例如: typedef int array[2];描述: array等价于 int [2]定义; array a声明等价于int a

2018-01-28 10:59:43 173

转载 perror的作用

头文件  #include          #include//注意  不可以掉了这个头文件,perror是包含在这个文件里的//编辑本段perror表头文件完善版定义函数  void perror(const char *s); perror ("open_port");函数说明  perror ( )用 来 将 上 一 个 函 数 发 生 错 误 的 原 因 输

2018-01-28 10:41:02 2064

翻译 C语言中堆和栈的区别

C语言中堆和栈的区别一.前言:C语言程序经过编译连接后形成编译、连接后形成的二进制映像文件由栈,堆,数据段(由三部分部分组成:只读数据段,已经初始化读写数据段,未初始化数据段即BBS)和代码段组成,如下图所示:1.栈区(stack):由编译器自动分配释放,存放函数的参数值,局部变量等值。其操作方式类似于数据结构中的栈。2.堆区(heap):一般由程序员分配释放,若程序员

2018-01-28 10:39:58 155

转载 a与&a的区别

&a和a的区别当我们定义一个数组a时,编译器根据指定的元素个数和元素的类型分配确定大小(元素类型大小*元素个数)的一块内存,并把这块内存的名字命名为a。名字a一旦与这块内存匹配就不能改变。a[0],a[1]等为a的元素,但并非元素的名字。数组的每一个元素都是没有名字的。这里&a[0]和&a到底有什么区别呢?a[0]是一个元素,a是整个数组,虽然&a[0]与&a的值一样,但其意义不一样。

2017-12-01 17:10:14 23181 1

转载 #define和inline 的区别

#define和inline 的区别define:定义预编译时处理的宏;  只进行简单的字符替换,无类型检测typedef:定义类型别名 用于处理复杂类型  例: typedef int A;  则:A a; //定义a为intinline: 内联函数对编译器提出建议,是否进行宏替换,编译器有权拒绝  既为提出申请,不一定会成功 static一、产生背景

2017-11-23 18:51:18 868

原创 GCC编译过程分析

以helloworld为例分析gcc编译过程:#includeint main(){         printf(“Hello World\n”);         return 0;}通常我们使用gcc来生成可执行程序,命令为:gcc hello.c,生成可执行文件a.out实际上gcc hello.c可以分解为4个步骤,分别是预处理(Preprocess)

2017-11-17 20:26:54 197

原创 初学C语言

1、什么是计算机程序?什么是编程语言?为什么需要编程语言?编程语言是用来干嘛的?举例一些编程语言,以及他们各自的特点?计算机程序(英语:Computer program),也称为软件(英语:software),简称程序(英语:Program)是指一组指示计算机或其他具有信息处理能力装置每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。    编程语言(programm

2017-11-17 18:21:25 5017

转载 linux的常见指令

1:mkdir     创建目录的命令 make directorys         -p  递归创建2: ls    -1(long)d(directory)显示目录或者文件 全称list    3:cd    切换目录层次 change directory         -     回到上一次目录~     回到根目录         cd . 当前目录

2017-11-12 19:25:57 172

矩阵简易计算器

基于51单片机的简易计算机,适合初学者入门。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2018-08-10

空空如也

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

TA关注的人

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