- 博客(6)
- 收藏
- 关注
转载 assert断言
<br />¹7-5:使用断言来发现软件问题,提高代码可测性<br />说明:断言是对某种假设条件进行检查(可理解为若条件成立则无动作,否则应报告),它可以快速发现并定位软件问题,同时对系统错误进行自动报警。断言可以对在系统中隐藏很深,用其它手段极难发现的问题进行定位,从而缩短软件问题定位时间,提高系统的可测性。实际应用时,可根据具体情况灵活地设计断言。<br /> <br />示例:下面是C语言中的一个断言,用宏来设计的。(其中NULL为0L)<br />#ifdef _EXAM_ASSERT_TEST_
2010-09-02 16:11:00 577
原创 比较
<br />int main(void) <br />{ <br />char p[] = "i'm hungry";<br />printf("%s",p);<br />p[1]='a';<br />printf("/n%s",p);<br />//printf("str2=%x/n",t.i);<br /> return 0; <br />} <br />输出为i'm hungry<br /> iam hungry<br /> <br />int main(void) <br />{
2010-09-02 15:20:00 320
原创 中断
<br /> 每个中断控制器的寄存器都包括:中断使能寄存器、中断原始状态寄存器、中断状态寄存器、中断触发极性寄存器、中断触发类型寄存器以及中断类型寄存器。<br /> 中断时能寄存器 :禁止或者允许外设的独立中断连接到相应的控制器;<br /> 0——禁止,1——使能中断。<br /> 中断原始状态寄存器: 读:0,中断源没有产生中断
2010-08-30 16:13:00 919
转载 C中栈区 堆区 常量区
C中栈区 堆区 常量区 (转)<br /> <br />#include<iostream.h><br /><br />void main()<br />{<br />char a[]="abc";栈<br />char b[]="abc";栈<br />char* c="abc";abc在常量区,c在栈上。<br />char* d="abc"; 编译器可能会将它与c所指向的"abc"优化成一个地方。<br />const char e[]="abc";栈<br />const char f[]="abc
2010-08-30 10:48:00 637
转载 内存分配方式
内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3)从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内
2010-08-30 10:39:00 375
转载 enum struct union 大小 (zz)
<br />typedef enum<br />{<br /> ANUnknown = 0,<br /> ANShapeFile = 1,<br /> ANSDEDatabase = 2,<br /> ANFileDatabase = 3,<br /> ANRasterFile = 4<br />}ANDataType;<br />sizeof(ANDataType) 为 4<br />======================================================<br />s
2010-08-30 10:27:00 331
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人