C
文章平均质量分 74
jocks
这个作者很懒,什么都没留下…
展开
-
输出gcc的编译器内部预设全部常量宏定义
利用gcc编译器的预处理功能,可以输出编译器内部预设全部常量宏定义,对于交叉编译器arm-linux-gcc同样有功能,命令格式# gcc -E -dM bl.c# arm-linux-gcc -E -dM bl.c输出的实例如下:[root@jocks ~]# gcc -E -dM bl.c#define __DBL_MIN_EXP__ (-1021)#define原创 2012-07-23 11:05:20 · 5215 阅读 · 1 评论 -
IEEE754标准 单精度(32位)/双精度(64位)浮点数解码
IEEE754标准 单精度(32位)/双精度(64位)浮点数直接解码 ,不借助任何的其他库函数,采用 ascStrAdd() 对ASCII表示的数字串进行计算得到)内存中的浮点数位串的的10进制的数值///////////////////////////////////////////////单精度(32位)浮点数的结构:名称原创 2012-07-30 10:57:33 · 31598 阅读 · 0 评论 -
一个简单有趣的C语言自打印程序print-me.c
所谓的自打印程序是指这样一个程序A:当A编译运行后,其运行结果就是将A程序的源代码输出出来。乍看这个问题,很容易直接想到的方法就是通过读文件的方法将其源代码打印出来。但是如果限定仅仅用C的printf函数,不用其他的函数,该如何处理呢?下面是一个C语言的实现,print-me.c的源程序如下:int main(){char *me="int main(){char *me=%c原创 2012-10-23 16:42:38 · 5207 阅读 · 0 评论 -
3行代码为何能求得二进制数中1比特的个数
给定二进制数A,下面的代码求得A中1比特的个数int get_bit1_of_binary(int A){ int count_of_bit1 = 0; while (A) { A &= A - 1; count_of_bit1++; } return count_of_bit1;}分析:上面的代码的核心部分就是其中的蓝色原创 2012-11-11 19:52:27 · 1280 阅读 · 0 评论 -
为什么异或运算可以实现两个整数的交换,而无需借助第3个临时变量
通常的交换两个变量a,b的过程为int temp;temp=aa=b;b=temp;需借助上面的第3个临时变量temp.采用下面的方法,对于给定两个整数a,b,下面的异或运算可以实现a,b的交换,而无需借助第3个临时变量: a = a ^ b; b = a ^ b; a = a ^ b;这个交换两个变量而无需借助第3个临原创 2012-11-14 14:23:05 · 6044 阅读 · 4 评论 -
一行awk脚本实现hex文件校验和的检验
Intel HEX文件是用ASCII文本文件形式表示的可直接用文本阅读器读取的16进制格式文件,多用来存放ROM或者EPROM中的程序和数据,可以被多数的烧写程序识别读取并烧写到PROM或FLASH中,大多数EPROM编程器或模拟器使用Intel HEX文件。HEX文件中,每一行包含一个HEX记录,以:做为起始标识,其后面分别为1字节的数据长度域A2字节的地址域B1字节的记录类型域原创 2012-11-23 11:10:01 · 1413 阅读 · 0 评论 -
细胞词库的解码C源程序
//细胞词库解码C源程序,输出为UNICODE的TXT格式原创 2014-11-09 00:37:48 · 1979 阅读 · 0 评论