
linux 其它知识-整理
文章平均质量分 51
基础
泰乐熊
这个作者很懒,什么都没留下…
展开
-
关于 NULL NUL '\0' '0' 0 的区别
1. NULL [nʌl] 是一个宏,其定义为空指针,位于stdio.h中。#ifndef NULL#define NULL ((void*)0)#endif作为一个特殊的指针变量,其不指向任何东西。实际上NULL的字面值常量为0,然后被强制转换为空指针类型。之所以定义成NULL,本人觉得主要是为了方便识别。比如下面这个例子,它可以提醒我们malloc返回的指针值是否有效。...原创 2019-01-03 17:25:57 · 522 阅读 · 0 评论 -
指针 数组 基础篇(最终章)
本文主要讲解指针的使用。指针环节:指针变量存储的值都是些地址。 tip:当你直接往一地址处写入数据时,需要先强制转换,比如地址0xF000FF00,因为它是一个字面值常量,类型为整形,需要先转换为指针类型:unsigned char *p = (unsigned char *)0xF000FF00;*p=11; 或者直接写成 *(unsigned ch...原创 2019-01-24 18:03:11 · 319 阅读 · 0 评论 -
C语言实现OOP (ing)
想用C来实现OOP,关键在于结构体。struct和OOP中的class最大区别为默认的继承访问权限:struct是public的,大家都能看到,class是private的,只有指定的对象看得到。码农翻身里面有一篇文章讲到过用c语言来实现OOP,今天参照着它撸了一下oop的三大概念:封装、继承、多态。1 封装:意思就是把信息隐藏起来。举个例子,先创建一个shape结构体,然...原创 2019-02-14 14:07:53 · 1991 阅读 · 0 评论 -
指针 数组 理解篇
函数指针举个例子:int fun(int x);...int ret;int (*ptr)(int) = &fun; //定义一个函数指针//三种方式去调用函数,效果都一样ret = fun(123);ret = (*ptr)(123);ret = ptr(123);上文中定义了一个函数指针ptr,并初始化为指向函数fun()。初始化表达式中的&a...原创 2019-02-12 22:38:40 · 177 阅读 · 0 评论 -
类的概念及品种(ing)
虚函数:在某基类中声明为 virtual 并在一个或多个派生类中被重新定义的成员函数。纯虚函数:在声明虚函数时被“初始化”为0的函数。抽象类:至少包含一个纯虚函数的类。虚析构函数:释放派生类的对象。C++规定,当一个成员函数被声明为虚函数之后,其派生类中的同名函数都自动成为虚函数。记住...原创 2020-01-31 11:10:03 · 249 阅读 · 0 评论 -
字符串拷贝函数整理
void *memcpy(void *dest, const void *src, size_t n); //#include<string.h> ,函数返回指向dest的指针。由于这玩意的dest和src类型为 void *,理论上可以拷贝任何类型的数据,很强大。int snprintf(char *str, size_t size, const char *format...原创 2020-01-31 10:08:58 · 1345 阅读 · 0 评论 -
二叉树
二叉树的两特点: 1. 最多有两棵子树。 2. 子树有左右之分。今天科普下二叉树的层次遍历。模板:原创 2020-01-31 10:06:20 · 150 阅读 · 0 评论 -
airplay,了解一下
最近在整理有關airplay的項目,在此記錄下自己的一些小结。airplay传输方式有两类:一个是无线方式,可以mirror+stream,另一个是有线,只能mirror。1. 设备广播与发现:对于小机而言首先需要注册两类服务,即airtunes和airplay。Airtunes服务主要用来处理广播视音频接收能力协商,是最为重要的服务内容。当接收端通过Bonjour广播...原创 2020-01-31 10:05:49 · 431 阅读 · 0 评论 -
电磁波 + TV基础
bash的变量默认定义:变量类型默认为字串,declare 可指定其它类型$ sum=100+300+50 #若不指定类型, 则100+300+50默认为字串$ echo $sum100+300+50 $ declare -i sum=100+300+50 #指定sum变量为整形$ echo $sum450$ declare -x sum #指...原创 2020-01-30 15:43:59 · 255 阅读 · 0 评论 -
ARM linux 启动流程-整理
bootloader基本的初始化工作:关闭看门狗,设置ddr、nand flash 启动内核kernelkernel初始化步骤:进入kernel阶段,系统会先探测可识别的所有硬件设备 随后系统会加载设备驱动程序,并生成一个临时只读的rootfs系统 在运行了rootfs后,系统将开始运行第一个初始化程序--init内核文件位置:/boot/vmlinuz-3.13.0-3...原创 2019-08-06 23:23:16 · 562 阅读 · 0 评论 -
DLNA介绍
简介:Digital Living Network Alliance 全称为数字生活网络联盟,其定义了一种规范。由五个功能组件构成:网络互连: 规定了所接入网络的类型和协议,主要包括有线的802.3.i/u 和无线的802.11/a/b/g 网络协议: ipv4 媒体传输: HTTP 1.0/1.1 和RTP协议 设备的发现控制和管理: UPnP相关协议 媒体格式: JPEG,...原创 2020-01-30 15:39:49 · 1633 阅读 · 0 评论 -
字符设备与块设备
各种设备都是以文件的形式存放在/dev目录下,称为设备文件字符设备字符设备: 系统中按照字节流的方式被顺序访问的设备代表:键盘、串口块设备块设备:系统中能够随机访问 固定大小的数据块(chunks)的设备代表:硬盘、flash可通过文件系统的方式访问块设备查询设备 查看/proc/devices文件可以获知系统中注册的设备,第1列为主设备号,第...原创 2020-01-30 14:59:21 · 285 阅读 · 0 评论 -
显示屏 整理
LCD_densitypx:这是我们通常所说的像素,例如1024*768 dp:也就是dip,表示独立像素,是根据px和dpi来决定的,px = dp * (dpi / 160) density:屏幕密度,等于dpi/160 dpi:dots per inch,每英寸像素数。这个值是设备自己决定的,写死了。 dpi=/屏幕尺寸例如 7英寸,1024*600分辨率,dpi算出来为169...原创 2019-11-24 23:24:35 · 360 阅读 · 0 评论 -
linux磁盘管理+文件系统
本文主要介绍linux硬盘的基础知识。一. 硬盘简介linux用来存储的设备分为两种:内存RAM 和 硬盘Hard Disk。内存速度快,掉电后易失。硬盘速度慢,掉电后非易失。(闪存Flash是最新流行的存储器,和硬盘类似)硬盘接口类型(硬盘与主机系统之间的连接):IDE:传统的并口硬盘,系统中标识为 /dev/hdx,使用最普遍,速度慢,便宜,不支持热插拔。 SATA:se...原创 2019-03-03 14:24:42 · 369 阅读 · 0 评论 -
头结点和头指针的关系
之前每次用到这两家伙,都有点模糊,今个来对比研究下。空节点:可以简化编程,用头指针指向它。 首先得知道头指针不是一个节点,就是一个普通的指针而已,其类型为(struct node *),每创建一个节点,需要跟头指针关联(pHeader = p1;pHeader->next = p2;)访问链表中各个节点的有效数据时,这个访问必须注意不能用节点中的指针(如p1, p2, p3...原创 2018-11-09 15:22:38 · 1052 阅读 · 0 评论 -
英语时态+语态(基础框架)
现在一般时:否定句形式 1. 系动词:主语+ am/is/are + not 2.实义动词:主语+ doesn't/don't +动词原形 3.情态动词:主语+ 情态动词+not+动词原形 一般疑问句 1. 系动词:am/is/are+主语+其它? 2.实义动词:Do/Does+主语+实义动词+其它? 3.情态...原创 2019-01-15 16:12:06 · 1628 阅读 · 1 评论