摘要: 一,offsetof宏 1,作用:计算结构体中某个元素与结构体首地址的偏移量。 2,原理:虚拟一个0地址处的结构体类型变量type,然后用type.member的方式来访问那个member元素,继而得到member相对于整个变量首地址的偏移量。 3,自己实现:offsetof(type,member 阅读全文
posted @ 2020-11-15 11:42 xuxianshen 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 一,C语言使用指针来管理字符串;二,字符串指针和字符串本身;三,存储多个字符的两种方式:字符串和字符数组;四,sizeof关键字和strlen函数 阅读全文
posted @ 2020-11-15 10:57 xuxianshen 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 一,typedef关键字 1,C语言中的类型一共有两种:一种是编译器定义的原生类型(基础数据类型,比如int char float double);第二种是用户自定义的类型,不是语言自带的而是程序员自己定义的(比如数组指针、指针数组、函数指针、结构体类型、函数类型等)。 2,有时候自定义类型太长了, 阅读全文
posted @ 2020-11-08 15:05 xuxianshen 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 一,函数指针的实质 1,函数指针的实质还是指针,还是指针变量。本身占四个字节(32位系统)。 2,函数指针、数组指针、普通指针之间本身没有区别,区别在于指针指向的东西是个什么玩意。函数指针指向一个函数,数组指针指向一个数组。 3,函数的实质是一段代码,这一段代码在内存中是连续分布的(一个函数的大括号 阅读全文
posted @ 2020-11-08 14:22 xuxianshen 阅读(110) 评论(0) 推荐(0) 编辑
摘要: 一,从字面意思来理解指针数组和数组指针 1,指针数组:实质是一个数组,这个数组里存放的元素是指针。 2,数组指针:实质是一个指针,这个指针指向一个数组。 二,分析指针数组和数组指针的表达式 int *p[5]; int (*p)[5];int *(p[5]) 1,先说说一般规律。 int *p;(p 阅读全文
posted @ 2020-11-08 09:46 xuxianshen 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 一,变量的数据类型的含义 1,所有类型的数据都是以二进制的形式存储在内存中的。内存中只知道有0和1,不知道是int的还是float还是其他类型。 2,int、char、short等属于整型,它们的存储方式(数据转换成二进制数在内存中的存放方式)是相同的,只是内存格子的长度不同(所以这几种整型就彼此叫 阅读全文
posted @ 2020-11-06 08:12 xuxianshen 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 指针类型决定了指针如何参与运算 1,指针参与运算时,因为指针变量本身存储的数值是表示地址的,所以运算也就是地址的运算。 2,指针参与运算的特点是,指针变量加1并不是真的加1,而是加1*sizeof(指针类型);如果是int *指针,则加1实际上就是表示地址+4(地址+sizeof(int)),如果是 阅读全文
posted @ 2020-11-05 22:54 xuxianshen 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 一,什么是左值什么是右值? 位于“=”符号左边的是左值,右边的是右值。 二,左值和右值的含义。 当一个变量做左值时,编译器就认为这个变量符号所代表的含义是这个变量所对应的内存空间。 当一个变量做右值时,编译器认为这个变量符号所代表的含义是这个变量的值,也就是这个变量所对应内存空间中存的那个数值。 三 阅读全文
posted @ 2020-11-05 08:26 xuxianshen 阅读(606) 评论(0) 推荐(0) 编辑
摘要: 一,野指针问题 1,什么是野指针? 野指针就是指针指向了一个不可知的位置(随机的、不正确的、限制访问的)。 2,会造成什么危害? 第一种情况,指向一个不可访问的地址(比如内核空间),会触发段错误,这种算是最好的情况。 第二种情况,指向一个可用的但是没有什么特别意义的空间(比如说曾经使用过但已经不用了 阅读全文
posted @ 2020-11-03 08:31 xuxianshen 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 一,位操作一般用法 1,特定位清零用“&”。 要想把一个数的特定位清零,就需要构造另一个数,这个数的对应特定位为0,其他位为1。2 2,特定位置1用“|”。 要想把一个数的特定位置1(设置特定位),就需要构造另一个数,这个数的对应特定位为1,其他位为0。 3,特定位取反用“^”。 要想把一个数的特定 阅读全文
posted @ 2020-11-02 08:32 xuxianshen 阅读(207) 评论(0) 推荐(0) 编辑