
C语言总结
文章平均质量分 60
sjmp
屌丝男
展开
-
C移位转换
一:unsigned long i; /* unsigned long 类型为4字节*/char c1=0xa4;char c2=0x31;i = c2问:i = (用16进制格式) i=0xffffffa4二:unsigned long i; /* unsigned long 类型为4字节*/char c1=0x74;原创 2012-06-09 10:00:11 · 999 阅读 · 0 评论 -
51单片机常用波特率初值表(12M晶振)
为什么51单片机的晶振一般使用11.0592? 用11.0592晶振的原因是51单片机的定时器导致的。用51单片机的定时器做波特率发生器时,如果用11.0592Mhz的晶振,根据公式算下来需要定时器设置的值都是整数;如果用12Mhz晶振,则波特率都是有偏差的,比如9600,用定时器取0XFD,实际波特率10000,一般波特率偏差在4%左右都是可以的,所以也还能用STC90C516 晶振12M转载 2012-10-09 17:37:48 · 27199 阅读 · 0 评论 -
异或运算的一些特性
1.一个数和自己做异或的结果是0。如果需要一个常数0,x86平台的编译器可能会生成这样的指令: xorl %eax, %eax。不管eax寄存器里的值原来是多少,做异或运算都能得到0,这条指令比同样效果的 movl $0, %eax指令快,直接对寄存器做位运算比生成一个立即数再传送到寄存器要快一些。2.从异或的真值表中可以看出,和0做异或保持原值不变,和1做异或得到原值的原创 2012-10-10 17:52:29 · 11526 阅读 · 0 评论 -
比较字符串的大小
//功能:比较字符串的大小//如果str1>str2返回1//如果str1=str2返回0//如果str1char zstrncmp(unsigned char *str1,unsigned char *str2,byte num){ while(num!=0) { if((*str1)==(*str2)) { s原创 2012-10-11 11:37:55 · 4773 阅读 · 0 评论 -
C语言union中包含struct 小结
一#includeint main(){ union { int i; struct {原创 2012-11-20 21:32:46 · 9784 阅读 · 0 评论