随笔分类 -  C语言

摘要:连一起: (val&(0x07<<n))>>n ​0-2: (val&0x07)>>0 ​1-3: (val&0x0e)>>1 ​2-4: (val&0x1c)>>2 ​3-5: (val&0x38)>>3 ​4-6: (val&0x70)>>4 ​5-7L (val&0xe0)>>5 ​单独第n位 阅读全文

posted @ 2019-02-12 17:27 寻找心的巨人 阅读(1127) 评论(0) 推荐(0)

摘要:1,从存储空间角度 虚函数对应一个vtable,这大家都知道,可是这个vtable其实是存储在对象的内存空间的。问题出来了,如果构造函数是虚的,就需要通过 vtable来调用,可是对象还没有实例化,也就是内存空间还没有,无法找到vtable,所以构造函数不能是虚函数。2,从使用角度 虚函数主要用于在 阅读全文

posted @ 2013-12-16 21:24 寻找心的巨人 阅读(845) 评论(0) 推荐(0)

摘要:typedef struct CvPoint{ int x, int y }CvPoint; //点是否在多边形里面bool PtInPolygon(CvPoint p,CvPoint* ptpolygon,int nCount){ int nCross=0; for (int i=0;i < nC 阅读全文

posted @ 2013-12-10 21:44 寻找心的巨人 阅读(266) 评论(0) 推荐(0)

摘要:练习一 软中断一 编写一个程序循环输出“how are you?”,当键盘输入Ctrl+C时终止,当输出次数不超过350次时在此过程中使用Ctrl+C不能中断显示,350次后才能用Ctrl+C中断显示,然后输出“Byebye”. <Code> #include<signal.h> #include< 阅读全文

posted @ 2013-12-10 21:42 寻找心的巨人 阅读(928) 评论(0) 推荐(0)

摘要:编辑器加载中... rs232是三芯通信,即DB9的第2引脚RXD(接收)、第3引脚TXD(发送数据)、第5引脚DG(信号地)。 rs232是三芯通信,485是两芯通讯的,RS-232串口线 通常 是 DB9--DB9 的 串口通信线,9芯 RS-485数据线 是 双绞线或者屏蔽双绞线,232传输距 阅读全文

posted @ 2013-12-10 21:40 寻找心的巨人 阅读(411) 评论(0) 推荐(0)

摘要:linux驱动程序一般工作在内核空间,但也可以工作在用户空间。下面我们将详细解析,什么是内核空间,什么是用户空间,以及如何判断他们。 Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G.Linux内核将这4G字节的空间分为两部分。将最高的1G字节(从 阅读全文

posted @ 2013-12-03 10:49 寻找心的巨人 阅读(321) 评论(0) 推荐(0)

摘要:计算机操作系统 ◆计算机的硬件组成:CPU + RAM + FLASH 三大总线 数据总线 地址总线 控制总线 图1.2 一个典型系统的硬件组成 1)总线:贯穿整个系统的一组电子管道,携带信息字节并负责在各个部件间传递。通常总线被设计成传送定长的字节块,各种系统的字节数不相同,例如Intel Pen 阅读全文

posted @ 2013-12-03 10:33 寻找心的巨人 阅读(1116) 评论(0) 推荐(0)

摘要:C++笔记 1 推动语言发展的动力是方便和重用 不是只有面向对象语言可以封装,C语言也可以封装,结构体成员是函数指针的时候也是满足的,但是比较麻烦。 2类的定义 类名首字母大写; 方法名首字母小写 Class 类名 { private: public: }; 3定义成员函数(调用成员函数时必须指定对 阅读全文

posted @ 2013-08-28 23:32 寻找心的巨人 阅读(213) 评论(0) 推荐(0)

摘要:系统编程 1 计算机系统的基本构成: 处理器(processor) 主存储器(等待调度的程序) 输入输出模块(二级存储设备,通信设备,终端,键盘,显示器,) 系统总线(地址,控制,数据) 2 CPU IO(轮询,定期主动轮询外设,工作效率低)(虾苗,温度传感器) CPU IO(中断 外设主动发出请求 阅读全文

posted @ 2013-08-28 13:40 寻找心的巨人 阅读(226) 评论(0) 推荐(0)

摘要:1.C库与系统调用的区别 库函数是高层的,完全运行在用户空间,为程序员提供调用真正的在幕后完成实际事务的系统调用的更方便的接口。系统调用在内核态运行并且由内核自己提供。标准C库函数printf()可以被看做是一个通用的输出语句,但它实际做的是将数据转化为符合格式的字符串并且调用系统调用 write( 阅读全文

posted @ 2013-08-28 11:54 寻找心的巨人 阅读(731) 评论(0) 推荐(0)

摘要:1 #ifndef _LIST_H 2 #define _LIST_H 3 #include"stdio.h" 4 #define _INLINE_ static inline 5 6 struct list_head { 7 struct list_head *next, *prev; 8 }; 阅读全文

posted @ 2013-08-23 23:45 寻找心的巨人 阅读(173) 评论(0) 推荐(0)

摘要:1 #include"stdio.h" 2 #include"malloc.h" 3 class Queue 4 { 5 private: 6 typedef struct queue 7 { 8 int data; 9 struct queue *next; 10 }link; 11 link*t 阅读全文

posted @ 2013-08-23 23:37 寻找心的巨人 阅读(481) 评论(0) 推荐(0)

摘要:一个朋友去面试,当被问到大端小端问题时候,朋友心里顿时没底了。其实有很多我们平时不注意的问题,往往成为功亏一篑的源头。下面总结几个类似的问题。 一inline 在C&C++中 inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。 表达式形式的宏定义一例: # 阅读全文

posted @ 2013-08-19 00:19 寻找心的巨人 阅读(242) 评论(0) 推荐(0)

摘要:#include<linux/timer.h>#include<linux/fs.h>#include<linux/delay.h>#include<linux/jiffies.h>#include<linux/kernel.h>#include<asm/string.h>#include<asm/ 阅读全文

posted @ 2013-08-16 23:35 寻找心的巨人 阅读(208) 评论(0) 推荐(0)

摘要:进程间通信方式通常有共享内存 信号量 消息队列 管道 FIFO Socket等几种。 共享内存的模型,它是最有效率的进程间通信方式 进程间信号量是进程间同步主要方式,信号量操作为负的时候,进程阻塞。直到信号量为正 内存映射是一种特殊的共享内存方式,只是本质上是对文件的操作 管道是亲戚进程间通信的常用 阅读全文

posted @ 2013-08-11 21:51 寻找心的巨人 阅读(438) 评论(0) 推荐(0)

导航