2021-10-24

1. C中断言(assert)

(1) 断言(assert) : 断定一件事一定成功;
(2) assert(表达式) : 如果表达式为真,则无事发生;如果表达式为假,系统崩溃(崩溃后会显示在那个文件的哪一行代码)
(3) 断言必须加上必要的头文件:#include<assert.h>
(4) assert:对于Debug(开发者版本)版本,写的越多越好,这样的话会尽早找出程序中的问题,但对于release版本来说,看不见,系统默认没有。
(5) 使用时,需要加if判断和断言配套使用,并且断言和if顺序不能改变,断言在if之前。

2. const

(1) const定义常变量,修饰的变量不能修改(只读)

例如:const  int  ca=10;

           ca=20;   //error

(2) 内置数据类型对于const透明

例如: int  const  cb = 10;  //等同于const  int  cb = 10;

            cb = 20;   //error\

 即const写int的左边和右边是等价的

(3) const只能修饰直接右边

例如:  int  a = 10; int  b = 20;

             const  int  *p1 = &a;

             p1 = &b;  

             *p1 = 100;  //error,因为*p1之前有const修饰

              int  const  *p2 = &a;   //等同于p1

              int  *const  p2 = &a;

              p2 = &b; //error ,const修饰p2

(4) 权限可以等同传递或者缩小传递,但不能放大。

例如:  int  a = 10; int  b = 20;

     const  int  ca = 30;   const  int  cb = 40;       int  *p1 = &a;    //true      int  *p2 = &ca;   //error     const  int  *p3 = &a;    //true     const  int  *p4 = &ca;    //true     int  *const  p5 = &a;       //true     int  *const  p6 = &ca;      //error     const   int  *const p7= &a;    //true

     

上一篇:cfssl 使用文档


下一篇:4g全网通SMD贴片内置天线怎么选择?