自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 注释转换程序

这个程序的目的是:把C注释全部转换为C++注释程序有以下几个状态:1、无状态:代码的正文部分2、C状态:注释方式为C注释3、C++状态:注释方式为C++注释4、END:结束状态这几种状态的关系首先我们要打开input.c文件,对这个文件内部的文件进行读取,然后处理,否则直接提示用户有错误。 接下来,我们还要打开output.c文件,对处理以后的代码进行写入。...

2018-10-31 19:36:33 366

原创 实现一个通讯录,可以实现文件存储

静态通讯录https://blog.csdn.net/Damn_Yang/article/details/83583962动态通讯录https://blog.csdn.net/Damn_Yang/article/details/83587824使用I/O流的概念,并使用IO函数,完成通讯录的文件存储Contact.h#ifndef __Contact_H__#define __...

2018-10-31 19:12:35 1083

原创 动态的实现一个通讯录

https://blog.csdn.net/Damn_Yang/article/details/83583962链接这篇博客是静态实现通讯录的,使用静态通讯录,开辟的空间太大,会造成空间浪费,使用动态开辟,用多少开辟多少,不会造成空间浪费Contact.h#ifndef __Contact_H__#define __Contact_H__#pragma warning(disabl...

2018-10-31 17:40:19 460

原创 C语言实现顺序表的基本操作(增,删,查,改等等)

 Seqlist.h #include<stdio.h>#include<assert.h>#include<string.h>#define MAX 100typedef int DataType;typedef struct SeqList{ DataType data[MAX];//数据 int sz;//记录数据的个数}Se...

2018-10-31 16:35:32 575

原创 C语言实现一个简单的通讯录

通讯录可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址可以有以下功能:1. 添加联系人信息2. 删除指定联系人信息3. 查找指定联系人信息4. 修改指定联系人信息5. 显示所有联系人信息6. 清空所有联系人7. 以名字排序所有联系人 Contact.h#ifndef __Contact_H__#define __Contact_H_...

2018-10-31 14:51:31 516

原创 C++实现Date类(日期类)

 Date.h#pragma once#include <iostream>using namespace std;class Date{public: Date(int year, int month, int day); /*Date(const Date& d);*/ Date& operator+=(const Date&...

2018-10-31 14:36:59 2848

原创 结构体内存对齐,位段,枚举+联合

1.结构体内存对齐结构体内存对齐规则1.第一个成员在与结构体变量偏移量为0的地址处2.其他成员变量要对齐到对齐数的整数倍的地址处。对齐数=编译器默认的一个对齐数与该成员大小的 较小值  vs中默认的值为8,linux中的默认值为43.结构体总大小为最大对齐数(每一个成员变量都有一个对齐数)的整数倍4.如果嵌套了结构体的情况,嵌套结构体对齐到自己最大对齐数的整数倍处,结构体...

2018-10-31 12:57:30 346

原创 C++类和对象(下篇)

1. 再谈构造函数2. static成员3.C++11的成员初始化新玩法4. 友元5.内部类6. 再次理解封装 1. 再谈构造函数1.1构造函数体赋值在创建对象时,编译器通过调用构造函数,给对象中各个成员变量一个合适的初始值 虽然上述构造函数调用之后,对象中已经有了一个初始值,但是不能将其称作为类对象成员的初始化,构造数体中的语句只能将其称作为赋初值...

2018-10-31 10:48:37 246

原创 C++类和对象(中篇)

1. 类的6个默认成员函数2. 构造函数2.1 概念构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用,保证每个数据成员都有 一个合适的初始值,并且在对象的生命周期内只调用一次。2.2 特性构造函数是特殊的成员函数,其特征如下:1. 函数名与类名相同。2. 无返回值。3. 对象构造(对象实例化)时编译器自动调用对应的构造函数。...

2018-10-26 22:29:48 711

原创 C++类和对象(上篇)

类与对象(上)1. 类与对象的初步认知2. 类的引入3. 类的定义4. 类的作用域5. 类的实例化6. 类的访问限定符及封装7. 类的对象大小的计算8. 类成员函数的this指针 1. 类与对象的初步认知C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,...

2018-10-26 21:52:48 362 1

原创 C++(关键字,命名空间,输入输出,缺省参数,函数重载,引用,内联函数,auto关键字(C++11),基于范围的for循坏(C++11),指针空值-nullptr(C++11))

1.C++关键字:2.命名空间在C/C++中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将都存在于全局作用域中,可能会导致很多冲突。使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或名字污染,namespace关键字的出现就是针对这种问题的。2.1命名空间的定义:定义命名空间,需要使用到namespace关键字,后面跟命名空间的名字,然后接一...

2018-10-24 15:52:52 531

原创 浅谈Linux进程等待

进程等待的必要性子进程退出,父进程不管不顾,就可能造成 僵尸进程 的问题,进而造成内存泄漏另外,进程一旦变成僵尸状态,kill -9也无能为力,因为谁也没有办法杀死一个死去的进程最后,父进程派给子进程的任务完成的如何,我们需要知道父进程通过进程等待的方式,回收子进程资源,避免内存泄漏,获取子进程退出信息进程等待的方法wait方法#include<sys/ty...

2018-10-22 20:01:12 345

原创 Linux进程控制

1.进程创建,终止,等待,使用代码实现进程创建pid_t fork(void);返回值:子进程中返回0,父进程返回子进程的id,出错时返回-1;进程调用fork,当控制转移到内核中的fork代码后,内核做:分配新的内存块和内核数据结构给子进程将父进程部分数据结构内容拷贝至子进程添加子进程到系统进程列表当中fork返回,开始调度器调度 fork函数的返回值...

2018-10-22 19:50:09 192

原创 操作系统进程的调度算法

1. 先来先服务 (FCFS,first come first served)先来先服务的调度算法:最简单的调度算法,既可以用于作业调度 ,也可以用于程序调度,当作业调度中采用该算法时,系统将按照作业到达的先后次序来进行调度,优先从后备队列中,选择一个或多个位于队列头部的作业,把他们调入内存,分配所需资源、创建进程,然后放入"就绪队列",直到该进程运行到完成或发生某事件堵塞后,进程调度程序才将...

2018-10-15 18:47:17 366

原创 模拟实现僵尸进程,孤儿进程

 使用代码模拟实现僵尸进程, 孤儿进程的场景僵尸进程:1.僵尸状态是一个比较特殊的状态。当进程退出并且父进程没有读取到子进程退出的返回代码时就会产生僵尸进程2.僵尸进程会以终止状态保持在进程表中,并且会一直等待父进程读取退出状态代码3.所以,只要子进程退出,父进程还在运行,但父进程没有读取子进程的状态,子进程就进去僵尸状态代码实现 #include<stdio....

2018-10-15 16:59:29 542

原创 Linux进程状态

R运行状态(runing): 表明进程要么在运行中要么在运行队列里,并不意味着进程一定在运行中。S睡眠状态(sleeping):意味着进程在等待事件的完成(这里的睡眠有时候也叫做可中断睡眠)D磁盘睡眠状态(Disk sleep): 有时候也叫做不可中断睡眠,在这个状态的进程通常会等待IO的结束T停止状态(stopped):可以通过发送SIGSTOP信号给进程来停止(T)进程。这个被暂停...

2018-10-15 16:52:43 119302

原创 Linux进程概念

1.进程概念课本概念:程序的一个执行实例或者正在执行的程序等内核观点:担当分配系统资源(cpu时间,内存)的实体2.描述进程-PCB进程信息被放在一个叫做进程控制块的数据结构中,可以理解为进程属性的集合。课本上称之位PCB(process control block),linux操作系统下的PCB是task_struct(1)task_struct-PCB的一种    ...

2018-10-15 15:04:09 270

原创 Linux开发工具

1. 自行查找资料, 调研除了vim, 还有哪些常用的牛逼的编辑器, 并能够横向对比编辑器之间的区别和优缺点.vim      vim 是从vi发张出来的一个文本编辑器,代码补全,编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的编辑器eclipse    eclipse是一款开源代码编辑器,它拥有代码高亮和智能提示等强大的功...

2018-10-14 12:28:29 243

原创 Linux下实现进度条程序. 通过makefile进行编译. 建议自主完成一个彩色的进度条.

Linux下用C语言完成一个彩色进度条1.建一个Makefile文件2.vim Makefiletest:test.c gcc -o test test.c ...

2018-10-11 12:49:30 279

原创 Linux常用的基本命令

1. ls命令语法:ls [选项] [目录或文件]功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息常用选项:-a 列出目录下所有文件,包括以 . 开头的文件-d 将目录像文件一样显示,而不是显示其下的文件-i 输出文件的i节点的索引信息-l 列出文件的详细信息2. pwd命令功能:显示用户当前所在的目录3. cd命令...

2018-10-01 13:18:07 250

空空如也

空空如也

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

TA关注的人

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