- 博客(23)
- 收藏
- 关注
原创 18.8.17记录 part 2
#通过四个进程实现两个程序可以互相发送信息的功能视为 part 1 中的升级版!注意,此项操作关系到内核,所以需要在home目录或者根目录先进行创建创建程序#1:#include<stdio.h>#include<sys/types.h>#include<sys/ipc.h>#include<sys/msg.h>#incl...
2018-08-19 11:24:01
135
原创 18.8.17记录 part 1
****************进程间通信*******************#目的1.数据传输2.资源共享3.通知事件4.进程控制#发展1.UNIX进程间通信2.基于System V进程间通信(常用)3.POSIX进程间通信(最新)#POSIX表示可移植操作系统接口#分类1.管道(pipe)和有名管道(FIFO)2.信号(signal)3.消息队列4.共享...
2018-08-19 10:50:39
174
原创 18.8.15记录
*******************************进程控制编程***************************************#进程的定义: 进程是一个具有一定独立功能的程序的一次运动活动,同时也是资源分配的最小单元。#程序是放到磁盘的可执行文件#进程是指程序执行的实例#进程和程序的区别1.进程是动态的,程序是静态的2.进程是暂时的,程序是长久的...
2018-08-15 20:03:31
200
2
原创 简单停车场项目 和 通讯录V3.0(保存文件操作)
停车场:头文件:#ifndef _parking_h#define _parking_h#include<stdio.h>#include<stdlib.h>#define SUCCESS 1111#define FAILURE 2222#define TRUE 3333 //没什么用QAQ#define FALSE 4444 //同上...
2018-08-14 17:24:31
285
转载 18.8.10简单二叉树 和 归并排序
归并排序(Merge sort)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。算法步骤:1. 申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列2. 设定两个指针,最初位置分别为两个已经排序序列的起始位置3. 比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置...
2018-08-10 19:39:46
557
1
原创 18.8.8 记录
队列判断队列满的条件: (rear + 1)%QueueSize==front通用的计算队列长度公式:(reat-front+QueueSize)%QueueSize头文件#ifndef _SequenceQueue_h#define _SequenceQueue_h#include<stdlib.h>#include<stdio.h>...
2018-08-08 20:44:45
135
原创 18.8.6 记录 :顺序栈的创建以及基本操作。
******************************************************************************************************************栈的特点:先进后出。#1.栈是一个特殊的线性表,只能在一段操作2.允许操作的一段称为栈顶,栈底是不可以被操作的。#常见操作:创建栈,销毁栈,清空栈,进栈,...
2018-08-06 20:34:47
106
原创 18.8.5单链表实现 V2.0
这是简单的单链表通讯录。已经完成了基本操作:增、删、改、查、以及遍历通讯录名单。如果想要扩大通讯录的存储空间,更改头文件的"SIZE"的大小即可。头文件:#ifndef _addresslist_h#define _addresslish_h#define SUCCESS 1234#define FAILURE 2345#define SIZE ...
2018-08-05 19:09:42
114
原创 2018.8.4 记录
**************************链表****************************#单链表,静态链表,循环链表,双向链表。#***单链表:单个结点 :分为数据域和指针域头结点:并不是所有链表都有头结点、头结点数据域不保存数据。头指针:保存头结点地址的指针称为头指针。struct student{ //数据域 char name[20];...
2018-08-04 23:36:56
105
原创 18.8.2 顺序表
#枚举:将变量的值———列举出来,变量的值只限于列举出来的值的范围内。***************************数据结构*******************************注:主要说明 线性结构#线性表包含顺序表(连续)和链表(不连续)线性表特点:1.直接前驱, 2.直接后继。#顺序表即线性表的顺序结构。#线性结构1.顺序结构 是连续的2.链式存...
2018-08-02 19:19:58
137
原创 18.7.31指针复习
指针表达式。一个表达式的最后结果如果是一个指针,那么这个表达式就叫指针表达式。下面是一些指针表达式的例子:eg1:int a,b;int array[10];int *pa;pa=&a;//&a是一个指针表达式。int **ptr=&pa;//&pa也是一个指针表达式。*ptr=&b;//*ptr和&b都是指针表达式。pa=arra...
2018-07-31 21:14:58
118
原创 18.7.29 (t' n' b' l' y')
#include<stdio.h>int main(){ const int p;//只读变量,不能通过p修改对应内存的值。 int * const q;//指针q的指向不能被修改 int const *z; const int *a;//和上方int const *z相等,即不能指针指向地址内的值不能被修改 const int *con...
2018-07-29 19:18:03
156
原创 18.7.28
作业1:题目: 请编写一个C函数,该函数将一个字符串逆序#include<stdio.h>#include<stdlib.h>#include<string.h>void string_reverse(char *ptr,char *str){/* int i,len_ptr; len_ptr=strlen(ptr); for(i=0;i...
2018-07-28 19:09:03
133
原创 18.7.27
*************************************指针(part2)******************************************指向二维数组的指针的几种表示方式:指向二维数组的指针的几种表示方式练习1:#include<stdio.h>int main(){ int a[3][4]={{1,2,3,4},{3,4...
2018-07-27 19:06:46
132
原创 18.7.26通讯录V1.0版(还在调试)
/************************************************************************* > File Name: addresslist.c > Author: ma6174 > Mail: ma6174@163.com > Created Time: 2018年07月26日 ...
2018-07-26 20:48:03
94
原创 18.7.25记录
#/预处理1.种类:宏定义 #define文件包含 #include 条件编译#include"stdio.h"在当前目录和TC指定目录中找该文件。#include<stdio.h>在由TC指定文件目中找该文件。#define OUT printf("hello") //无参宏函数#define P(s) printf(...
2018-07-25 18:51:57
109
原创 18.7.24
题目1:在字符数组中指定开始位置插入字符串。#include<stdio.h>#include <stdlib.h>#include<string.h>int main(){ char t[100],s[100]; int n,m,f,i,l; printf("请输入要插入的一段字符串。\n"); scanf("%s...
2018-07-24 21:02:22
123
原创 18.7.23随堂记录
#写程序时要养成入参判断的习惯 *数组和函数*#/一维数组1.定义格式:类型说明符 数组名【常量表达式】;eg: int a[10];(占40个字节连续排列)其中,a是数组名,10是数组长度(10个元素)。注:C语言不允许对数组大小作动态定义,即数组的大小不依赖于程序运行过程中变量的值。几种错误:float a[0]//数组大小为0没有...
2018-07-23 18:36:56
155
原创 18.7.21随堂记录
1.#C语言因为可以操作内存,所以效率非常高。linux是使用C语言编写。内核和驱动也是由C语言编写。 2.#数据类型:/基本数据类型+复合数据类型/整形一定不比短整型短;长整形一定不比整形短。#/32位linux中各个关键字所占的字节数。#char:1 用来表示256个ASCⅡ字符,或者0~255的整数。#short:2#int:4#long:4#float:...
2018-07-21 18:18:29
208
原创 18.7.20记录
#/GDB(hello.c的源文件已被创建) 被调试的应用程序在编译时最好使用-g参数将调试信息编入 gcc hello.c -o hello -g(-o hello 必须前后不变但位置可变:gcc -g hello.c -o hello)#(gdb)list 10 --l:表示列出10行源码。#(gdb)run --r:从头运行。#(gdb)qu...
2018-07-20 18:35:21
142
原创 18.7.19随堂笔记
1.linux常用工具 #/vim 拥有三种模式:插入模式、命令模式、低行模式。 插入模式:按键"i"/"a"/"s"则会提示:--插入-- 在插入模式按下ESC则会进入命令模式 命令模式快捷操作: #x是删除一个字符, #dd是删除一行,删除及剪切。 eg:3x则会少三个字符,3dd则会少三行 #p则会粘贴在光标的下一行 其中,eg:3...
2018-07-19 18:43:15
190
原创 18.7.18.记录
今日的要求:1自学文件处理命令和系统安全相关命令各5条2vim配置文件处理命令有:file, mkdir,grep,dd,find,mv,ls,diff,cat,ln;系统安全相关命令有:passwd,su,umask,chgrp.chmod,chown,chattr,sudo,ps,who;#/file:1.通过探测文件内容来判断文件类型,使用权限是所有的用户。2.使...
2018-07-18 21:05:53
119
原创 18.7.17下午随堂笔记
1.嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。是将应用程序、操作系统和计算机硬件集成在一起的系统。2.应用领域:工业控制、军事国防、消费电子、网络。3.在linux里使用命令比使用鼠标更加方便。4.命令:#/ls(显示的意思)#/cd(进入的意思)举例:输入”cd /“(值得注意的是cd后跟的/之间必须添加一个 空格字符。如果没有添加空格字符则会...
2018-07-17 20:06:13
112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人