#ifdef __cplusplus
extern "C" {
#endif
//一段代码
#ifdef __cplusplus
}
#endif
__cplusplus是cpp中的自定义宏,那么定义了这个宏的话表示这是一段cpp的代码,也就是说,上面的代码的含义是:如果这是一段cpp的代码,那么加入extern "C"{和}处理其中的代码。
参考链接:https://blog.csdn.net/u012234115/article/details/43272441
typedef enum
{
E1 = -100,
E2 = -99,
E3 = -98,
E4 = -97,
}ErrorType;
使用枚举enum定义错误码
typedef double vector6[6];
typedef doubl matrix_66[6][6];
typedef struct
{
double x;
double y;
double z;
double a;
double b;
double c;
}Pos;
vector6 v1,v2;
matrix_66 mx={{0}};
Pos Tool;
使用typedef定义数组、结构体类型,typedef声明的写法和普通的声明基本相同,只是把typedef这个关键字出现在声明的前面。
c语言中static 函数和普通函数
在全局变量之前加上关键字static,全局变量就被定义成为一个全局静态变量。
1)内存中的位置:静态存储区(静态存储区在整个程序运行期间都存在)
2)初始化:未经初始化的全局静态变量会被程序自动初始化为0(自动对象的值是任意的,除非他被显示初始化)
3)作用域:全局静态变量在声明他的文件之外是不可见的。准确地讲从定义之处开始到文件结尾。
好处:
<1>不会被其他文件所访问,修改
<2>其他文件中可以使用相同名字的变量,不会发生冲突。
静态函数
在函数的返回类型前加上关键字static,函数就被定义成为静态函数。
函数的定义和声明默认情况下是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。
定义静态函数的好处:
<1> 其他文件中可以定义相同名字的函数,不会发生冲突
<2> 静态函数不能被其他文件所用。