自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 嵌入式每日学习心得 基于TCP/IP的聊天室程序

//cilent.c#include #include #include #include #include #include #include #include void* rcv_fun(void* arg);int main(int argc,char *argv[]){ //FILE* p =fopen("1.txt","w+");

2017-09-09 17:19:27 599

原创 嵌入式每日学习心得 网络通信技术(TCP)

网络通信技术:计算机网络通信技术三大网络:计算机网络(有线网络,WiFi)电信网络(2G,3G,4G,5G)有线电视网络计算机网络:开放与廉价:IP地址:用来唯一的标识某个网络中的一台设备端口号(Port):用来唯一的标识同一台设备中的不同进程,就是一个非负整数(0-65535)网络通信实现方式:1.基于T

2017-09-06 23:59:15 758

原创 嵌入式每日学习心得 线程

线程(thread)进程中的一条执行路径线程属于进程,一个进程中可以有多个线程,必须至少有一个线程(即主线程,主函数是由主线程执行的)TID一个进程中的所有线程共享该进程的所有资源(PID,私有地址空间)所以线程中的通信很简单进程没有执行能力,进程是操作系统分配资源的基本单位每个线程都有且只有一个函数线程,线程创建成功会自动调用自己的

2017-09-06 23:56:36 531

原创 嵌入式每日学习心得 守护进程

3共享内存(Shared Memory):效率最高并发执行:宏观上感觉是同时,只有一个任务在执行,其他任务在暂停,单CPU都如此(多个任务分时复用,以时间片为单位,时间片很短,所以宏观上是同时)并行执行:在某一时刻,多个任务同时在执行,在多个cpu系统上可以实现消息队列(message queue)网络通信(socket)特殊的一些进

2017-09-06 23:55:19 227

原创 嵌入式每日学习心得 管道通信/IPC

并发编程技术IPC技术Inter-Process Conmunication 即进程之间通信方法有多样1信号(signal),异步通知信号来源:软件方面产生发送信号:kill(给指定进程),raise(给自己)捕获信号处理:signal进程收到一个信号后有三种处理方式1默认处理,通常就是强制结束2忽略处理,即不

2017-09-06 23:53:21 425

原创 嵌入式每日学习心得 进程与线程

进程和线程ctrl + z:暂停bg:对后台执行fg:调到前台()& :后台执行1标准输入2文件输入3主函数参数4环静变量exec族函数并不会创建一个新进程,会将当前进程替换成新的程序fork函数(重点):创建一个子进程,拷贝了一个父进程的副本终端只会等待其直接子进程,不会等待其间接子进程通过fork的返回值判

2017-09-06 23:50:28 347

原创 嵌入式每日学习心得2017.08.17

容器类:队列,栈STL:Stacks  Queues数组:vector   头文件:vector   特点:顺序存储   压入元素: insertpush_backpush_front   长度: size   取元素: [] //返回值的接口(安全性不高,可修改)at() //返回值链表:list头文件list栈:F

2017-08-17 08:22:14 173

原创 嵌入式每日学习心得2017.08.15

物理结构:信息在内存的表示顺序存储链式存储逻辑结构:1、散列2、线性表  1:1 顺序线性表链式线性表3、树形结构  1:N概念:是n(n>=0)个节点的的有限集合(n=0称为空树)。在任意一棵非空树中:(n=1)有且仅有一个特定的节点称为根(Root)节点,n>1时,其余节点(非根结点)可分为y个互不相交的有限集。节点的分类:节点的

2017-08-15 23:06:01 193

原创 嵌入式每日学习心得2017.08.14

异常:程序或系统在运行期间遇到运行错误  运行程序时,系统会将运行的执行权递交给程序,一当遇到异常,系统会回收此执行权(停止程序的运行,并报出错误)异常:软件异常:除数为0,内存非法访问,数组越界硬件异常:计算的硬件设备在运行期间出现问题。捕获错误:当程序运行时,遇到异常时,用户捕获错误,并自处理(而并不是由系统来处理(会直接退出))try{捕获错误

2017-08-14 23:04:23 143

原创 嵌入式每日学习心得2017.08.10

1、冒泡:两两“相邻”之间元素进行比较,交换位置 (交换排序)2、选择排序:每次从未排序中选择最值,依次存放 (交换排序)3、插入排序:依次从未排序中取出一个值,插入到已序中。    4、模板:函数模板:template 或 tempalte 返回值 函数名(T形参1,T2 形参2,,,){}注:实参确定类型T模板类:实现

2017-08-10 21:56:14 150

原创 嵌入式每日学习心得2017.08.09

可变形参:用户可以传递有限的任意个的实参。eg: printf(char*,...);函数:用于操作实参栈区。      void va_start(va_list ap, last);      type va_arg(va_list ap, type);      void va_end(va_list ap);      void va_copy(va_lis

2017-08-09 23:14:11 156

原创 嵌入式每日学习心得2017.08.08

可变形参:用户可以传递有限的任意个的实参。eg: printf(char*,...);对应函数:用于操作实参栈区。       void va_start(va_list ap, last);       type va_arg(va_list ap, type);       void va_end(va_list ap);       void va_copy(

2017-08-08 22:21:08 175

原创 嵌入式每日学习心得2017.08.07

类成员变量的存储类型:C语言:1、栈区(动太区) 2。堆区, 3.静态区1、普通变量作为成员变量2、指针变量作为成员变量3、静态变量作为成员变量:1、静态变量在程序调用时就已经分配好空间,2、在类外时必须初始化 3.对象共享静态变量(也就是实例化对象时,不会再分配静态空间) 4。构造函数的初始化列表是不能对静态成员变量初始化初始化: 类型  类::静态变量=

2017-08-07 23:39:27 163

原创 嵌入式每日学习心得2017.08.04

类成员变量的存储类型:C语言:1、栈区(动太区) 2。堆区, 3.静态区1、普通变量作为成员变量2、指针变量作为成员变量3、静态变量作为成员变量:1、静态变量在程序调用时就已经分配好空间,2、在类外时必须初始化 3.对象共享静态变量(也就是实例化对象时,不会再分配静态空间) 4。构造函数的初始化列表是不能对静态成员变量初始化初始化: 类型  类::静态变量=

2017-08-04 23:14:32 186

原创 嵌入式每日学习心得2017.08.03

申请堆区:C语言函数: malloc(长度)申请堆区 free() C++申请与释放堆区运算符:new  delete        申请堆区  1申请类型空间new  类型(初始化值) 释放free 地址2申请数组空间:    new 类型[长度];释放空间delete []地址;3申请对象空间new 类名(值。。。

2017-08-03 23:30:19 153

原创 嵌入式每日学习心得2017.08.02

类和对象:对象:一辆车,树叶,一个人。组成:属性,形为对象的描述:一个对象的描述过程。类:就是对象的一次描述组成:成员变量,成员方法(函数)类的三大特点:封装,继承,多态 定义类:class  类名{限定符:   方法; //注意:限定区间是从此限定符开始,到下一个限定符结束   方法1;   变量1;    变量2;限定符:

2017-08-02 21:55:33 177

原创 嵌入式每日学习心得2017.08.01

C语言:是一门面向过程的高级语言。C++:也是一门面向对象的高级语言。基于C语言的基础上,发展出来的新的语言C语言与C++的区别与相同点:C语言的源文件 .cC++语言的源文件 .cpp C语言的头文件      .hC++语言的头文件    文件名        上层的标准输入输出头文件c   stdio.h输入输出函数C++

2017-08-01 22:24:27 314

原创 嵌入式每日学习心得2017.07.31

程序=算法+数据算法:排序,查找,匹配("abchelloabc"),栈,队列数据的存储结构:物理结构,逻辑结构   物理结构:顺序存储(数组) int buf[41]    优点:访问元素方便快速,不能动态增长或删除元素     链式存储:多个元素在内存中地址可能互不相连,每个元素之间通过地址相联系(*)   逻辑结构:元素之间的一种关系散

2017-07-31 23:03:40 192

原创 嵌入式每日学习心得2017.07.28

文件:有限数据的集合。   TXT文档:有限文本的集合   exe程序:有限指令的集合。内存:当电脑关机时,内存会清空。文件:为了需要长期保存信息,一般文件存储到外储(U盘,光盘,硬盘。。。)文件构成:文件的位置(Linux: /home/LF/Desktop/a.txt   Winows: C:\User\Desktop\a.txt)+存储空间文件的划分:

2017-07-28 23:42:12 181

原创 嵌入式每日学习心得2017.07.26

队列:先进先出FIFO数据模型:struct queue{数据容器[队列长度];rear;//队尾front;//队头};功能:1、初始化initQueue()2、进队  EnQueue()3、出队  DeQueue()4、判断队为空 isEmpty()5、判断队为满 isFull()6、判断队列长度 QueueLenth()7、清空队列

2017-07-26 22:43:50 169

原创 嵌入式每日学习心得2017.07.25

1二分查找前提:有序时间复杂度:log2^n空间复杂度步骤:1取出未查找区间的中间值(left+right)/22查找关键字key与中间值进行比较:如果key>mid(key在右边),key3key!=mid,则循环1到2步骤,直到区间不存在为止2结构体(struct)srtuct 类型{属性}定义变量:引用成员./->  

2017-07-25 21:51:05 145

原创 嵌入式每日学习心得2017.07.24

C语言:强类型语言定义变量:分配空间类型  变量名;初始化:定义变量同时赋初值   =引用变量:使用变量(引用本变量的内容)注:此变量已经定义指针:地址指针变量:专门用于存储指针的变量二级指针:类型** 变量名;总结: char* pa=指针;    *pa只会出一个字节    short* pa=指针;  取出2Byte

2017-07-24 22:04:39 154

原创 嵌入式每日学习心得2017.07.21

缓冲区在数据输入时,如果输入有误,往往需要清空缓冲区,以保证下次输入的准确可靠。    在Linux系统中,有时会惯性思维,使用在Windows程序设计中常用的方法:(1)fflush(stdin):fflush()函数,不是标准c库中的,只是标准c的扩展,所以在Linux中,不行。(2)rewind(stdin):这个函数是将指针指向流的开始位置,

2017-07-21 22:12:46 174

原创 嵌入式每日学习心得2017.07.20

变量:程序语言对存储单元的抽象(1)变量名(name) 标识(2)地址(address) 存储位置(3)大小(size) 存储空间(4)类型(type) 值域和运算集(5)值  (value) 内容(6)生存期(lifetime) 存在的时段(7)作用域(scope) 作用范围地址:    内存中,每个字节都有一个编号,称为地址。

2017-07-20 21:54:15 209

原创 嵌入式每日学习心得2017.07.19

编译判断条件#ifndef ZMX设定条件标识#define ZMX(1)包含标准库、链接库(2)包含用户库(3)函数声明(4)变量的定义(外部变量,全局变量)(5)宏(6)数据结构的定义(结构体等)(7)类型重写等等。。。。结束包含#endifC语言开发中常用的关键字:const : const 限定一个变量

2017-07-19 23:24:58 167

原创 嵌入式每日学习心得2017.07.18

C语言定义的五大内存空间1.栈区 (stack):(局部变量,形参)FILO (先入后出),函数的形参和局部变量,存放在这个区。由编译器自动分配,自动释放。2.堆区(heap):(申请空间)这个区,由程序员申请后使用,使用完了,需要手动释放。否则,会造成内存泄漏。一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是

2017-07-18 22:41:12 211

原创 嵌入式每日学习心得2017.07.17

1.编辑器 vi(1)编辑器 vi 简介编辑器 vi 最初是由 Sun Microsystrms 公司的 Bill Joy 在1976 年开发的。启初,开发出了 Ex 编辑器,也称为行编辑器,后来开发了vi作为Ex的可视接口,一次能看到一屏的文本而不仅仅是一行,vi因此得名。vi在通过命令操作,界面不友好,对普通人不容易掌握。但是,其丰富的命令和强大的功能,以及占用资源少的特性,使

2017-07-17 20:07:56 394

原创 嵌入式每日学习心得2017.07.14

sizeof  的用法和特点。n=sizeof(a)/sizeof(int);循环结构的实现方式:(1+..100)1.while2.do...while3.for4.if...goto...5.递归goto语句的作用:无条件跳转滥用goto语句会导致程序执行流程混乱,代码可读性大大降低,所以建议尽量不使用goto语句break和continue

2017-07-14 16:38:11 218

原创 嵌入式每日学习心得2017.07.13

进制:表数方式,是几进制,就逢几进一十进制 : 逢十进一    ( 9  ~  0)     (123)10百  十  个1    3  0二进制: 逢二进一   (1 ~ 0)      (  )2八进制: 逢八进一 (7 ~ 0)         0123 八 -》 十    3*8^0+2*8^1+1*8^2 八 -》  二   001

2017-07-13 23:29:35 175

原创 嵌入式每日学习心得2017.07.12

头文件:包含对函数的声明,全局变量的定义,外部变量的定义,宏的定义等。主函数:一个函数有且仅有一个主函数,主函数是程序的入口和出口,程序从主函数开始,从上往下,一个一个语句执行。执行到主函数的最后一条语句后,程序结束。(有return 到该语句停止)转义字符:'\n'换行printf:将“字符串内容”,存放到stdout标准输出缓冲区读取并显示在屏幕

2017-07-12 22:56:14 180

原创 嵌入式每日学习心得2017.07.11

任务1 用vi创造多个文件vi a.c b.cn:下一个N:上一个任务2 怎样通过后面的名字把进程杀掉 killallkillall name任务3 ifconfig 和 dfdf第一列代表文件系统对应的设备文件的路径名(一般是硬盘的分区)第二列代表分区包含数据块(1024字节)的数目第三列代表已用数据块的数目第四列代表可用数据块的数

2017-07-11 22:07:27 198

原创 嵌入式每日学习心得2017.07.10

对于Linux相关命令,再次作一点总结,今天是上半部分,明天是下半部分1.用户(User)和组群(Group)管理相关命令每个用户必须至少属于一个组群,如果在创建一个新用户时没有指定它属于哪个组群,那么系统会自动创建一个和用户名相同的组群,并将该用户加入其中,这种组群称为私人组群每个用户都对应一个主目录(通常都是/home/用户名),默认情况下,普通用户只能在自己的主目录下工作

2017-07-10 23:13:50 199

原创 嵌入式每日学习心得2017.07.08

Linux系统管理技术Linux系统的使用方式:1:桌面环境操作(傻瓜化,但功能不够强大,某些操作效率很低甚至无法完成)2:Shell命令(专业高效,但非常不直观友好,学习难度大,需要记忆命令)要成为Unix/Linux系统骨灰级玩家,必须常用掌握shell命令!常用的桌面环境:GNOME/KDE和Windows系统不同,Linux系统的桌面

2017-07-08 23:37:35 215

原创 嵌入式每日学习心得2017.07.07

操作系统(Operation System,简称OS):管理各种软硬件资源是世界上最复杂的软件,它处于硬件设备和应用程序的中间层,对下管理各种硬件设备,对上为所有应用程序提供一个平台²主流操作系统:服务器:Linux/Unix,Windows Server,OS XPC端; Windows(美国微软),OS X(美国苹果),Linux嵌入式设备:Linux/Android(美国

2017-07-07 20:59:50 229

空空如也

空空如也

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

TA关注的人

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