摘要: 计算结构体的大小:结构体中可以定义的数据类型:1.基本类型2.上面已经出现过的数据类型,比如说上面已经定义过的结构体3.指向自己的指针因为内存对齐的问题,各个数据类型放的位置不同就会导致结构体的大小不一样,那么到底怎样计算一个结构体的大小呢?先介绍一个概念——偏移量,结构体中的偏移量就是结构体成员和 阅读全文
posted @ 2017-11-26 00:02 小乖不乖 阅读(14215) 评论(2) 推荐(1) 编辑
摘要: 一、预编译 他的命令是gcc -E main.c -o main.o 假设当前要编译的文件是main.c 1.将所有的#define删除,并展开所有的宏定义; 2.处理所有的预编译指令,例如:#if,#elif,#else,#endif; 3.处理#include预编译指令,将被包含的文件插入到预编 阅读全文
posted @ 2017-10-24 14:54 小乖不乖 阅读(2409) 评论(0) 推荐(0) 编辑
摘要: 这个代码可以求int类型范围内的所有水仙花数,如果想要求更大范围内的水仙花数将int类型修改成longlong就可以了 思路:将一个数除以最高位的权重得到它最高位位上的数字,假设这个数是1345,他的权重就是10^3,得到1,计算该位数字的立方并保存下来,然后再用这个数对最高位上的数字乘以他的权重的 阅读全文
posted @ 2017-10-21 23:46 小乖不乖 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 1. 为什么会产生两种模式: 在计算机中我们是以字节为单位的,每一个地址单元都对应着一个字节,一个字节就是8位,c语言中char类型之外,还 有四个字节的int,个字节的longlong类型,并且除了对于超过8位的处理器,比如32位处理器,64位处理器,由于寄存器的宽 度、大于一个字节就必然存在着字 阅读全文
posted @ 2017-10-21 22:42 小乖不乖 阅读(1134) 评论(0) 推荐(0) 编辑
摘要: 位运算符的基本作用: 位运算符是用来对二进制数操作的,有六个运算符:|:按位或,&:按位与,~:按位取反,^:按位异或,<<:按位左移,>>:按位右移,其中除了~按位取反是双目运算符,其他的全部是单目运算符,位运算符的操作数只能是整形和字符型数据, 各个位运算符的用法如下所示:(1)|:按位或,两个 阅读全文
posted @ 2017-10-21 12:20 小乖不乖 阅读(3282) 评论(1) 推荐(0) 编辑