- 条件操作符(三目操作符)
epx1?exp2:exp3
int main(){
int a = 10;
int b = 20;
int max = 0;
max = a > b ? a : b;
printf("%d\n", max);
return 0;
}
- typedef类型重定义
typedef unsigned int uint_age1;
int main(){
unsigned int age;
uint_age1;
return 0;
}
- register寄存器使用方法
int main(){
register int a=0;
return 0;
}
- 关键字static的修饰
1、修饰局部变量–静态局部变量
增大了局部变量的作用域,让静态局部变量出了作用域依然存在,到程序结束,
生命周期才结束。
void test(){
static int a=1;
a++;
printf("%d\n",a);
}
int main(){
int i=0;
while(i<10){
test()
i++;
}
return 0;
}
2、 修饰全局变量--静态全局变量
一个全局变量被static修饰,使得这个全局变量只能在本源文件内使用,不能在其他源文件内使用。
3、修饰函数--静态函数
一个函数被static修饰,使得这个函数只能在本源文件内使用,不能在其他源文件内使用。
extern声明外部符号函数 ( 可以使用其他源文件的内容)
- #define定义常量和宏
1、定义常量
#define MAX 10
int main(){
int a = MAX;
printf("%d\n", a);
return 0;
}
2、定义宏
Max(int x, int y){
return x > y ? x : y;
}
#define MAX(X,Y) ((X)>(Y)?(X):(Y))
int main(){
int a = 10;
int b = 20;
int max=Max(a, b);
printf("%d\n", max);
max = MAX(a, b);
printf("%d\n", max);
return 0;
}
- 指针
指针变量就是存放地址
int num=10;
int* p=#
*p=20;
printf("%d\n",num);
return o;