摘要: 1 unsigned int a = 0xfffffff7;2 unsigned char i = (unsigned char)a;3 char *b = (char *)&a; 4 printf("%x,%x",i,*b);结果输出是000000f7和fffffff7;unsigned int 四个字节,转换为unsigned char是1个字节,截取低位,则i为f7,由于是无符号所以x左边用0补齐32位 b是指针的转换,b指向的还是一个unsigned int的数,但是b是有符号的,则*b=f7,x左边用1补齐32位,则是fffffff7。 1 #includ 阅读全文
posted @ 2013-10-31 20:56 RunningPower 阅读(567) 评论(0) 推荐(0) 编辑
摘要: 最大堆 算法:1、保持堆的性质。 MAX-HEAPIFY(A, i)从结点i开始保持二叉堆的性质,通过比较左子树,把最大的赋值给A【largest】,再比较右子树,最大的赋值给A【largest】,比较i 和 largest相不相等,不等则互换A[largest]和A[i],并且递归调用MAX-HEAPIFY(A,largest)。代码: 1 MAX-HEAPIFY(A, i) 2 3 l←LEFT(i) 4 5 r←RIGHT(i) 6 7 if l≤heap-size[A] and A[l]>A[i] 8 9 then large... 阅读全文
posted @ 2013-10-31 20:34 RunningPower 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 静态数据成员,用关键字static声明,该类的所有对象维护该成员的同一个拷贝(包括该类派生类的对象,即派生类对象与基类对象共享基类的静态数据成员。1、Static数据成员必须在类外部定义,且正好定义一次,static成员属于类,在类定义时初始化,而不是像普通数据成员在对象建立时通过构造函数初始化。用(::)来指明所属的类。2、在类的声明中仅仅对静态数据成员进行引用性说明,必须在文件作用域的某个地方使用类名限定进行定义性说明,这时也可初始化。(延伸:C++头文件可以用const int a = 4;或者 static int a = 4;因为const声明变量在本文件是局部变量,只在本文件有效。 阅读全文
posted @ 2013-10-31 20:22 RunningPower 阅读(244) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2013-10-31 19:37 RunningPower 阅读(52) 评论(2) 推荐(0) 编辑