操作符
下标引用,函数调用和结构成员
下标引用操作符 '[ ]' ,函数调用操作符 '( )' ,结构体访问操作符 ' . ', ' -> ' 用于访问结构体的成员
int arr[0] = { };
printf("hehe\n");
[ ] 是下标引用操作符
( ) 是函数调用操作符,调用函数的时候,函数名后面的 '( )' 就是函数调用操作符
常见的关键字
关键字是C语言提供的,不能自己创建关键字
变量名不能是关键字
auto | 用于声明自动变量 |
break | 用于立即退出最近的一个循环 |
case | 用于switch语句中,表示一个分支 |
char | 用于声明字符类型变量 |
const | 用于定义常量 |
continue | 用于跳过当前循环的剩余部分,开始下一次循环 |
dafault | 用于switch语句中,表示默认分支 |
do | 用于do-while循环 |
daoule | 用于声明双精度浮点数 |
else | 用于if语句,表示else分支 |
enum | 用于定义枚举类型 |
float | 用于声明单精度浮点数 |
for | 用于for循环 |
if | 用于条件判断 |
int | 用于声明整型变量 |
long | 用于声明长整型变量 |
long long | 用于声明更长的长整型变量 |
return | 用于从函数返回值 |
short | 用于声明短整型变量 |
sizeof | 用于计算数据类型或变量的大小 |
static | 用于声明静态变量或函数 |
typedef | 用于创建新的数据类型名称 |
void | 用于声明函数没有返回值或指针指向任意类型 |
while | 用于while循环 |
简单介绍static
static修饰全局变量/函数
是将函数的外部链接属性变成了内部的链接属性
#include <stdio.h>
void test()
{
static int a = 1;
a++;
printf("%d ",a);
}
int main()
{
int i = 0;
while (i < 10)
{
test();
i++;
}
return 0;
}
打印结果
#define定义常量和宏
1. 定义常量
使用 '#define' 可以定义一个常量,这个常量在编译时会被替换为它所代表的值
2.定义符号
#include <stdio.h>
#define MAX 100
int main()
{
printf("%d\n",MAX);
return 0;
}
打印结果
3. 定义宏
'#define' 也可以用于定义宏,宏是一种预处理指令,允许你创建复杂的代码片段,这些代码片段在编译之前就被替换
#define ADD(X,Y) X+Y
int main()
{
printf("%d\n",ADD(2,3));
printf("\n");
printf("%d\n", 4 * ADD(2, 3));
return 0;
}
打印结果
4. 包含文件
'#define' 也可以用于包含文件,虽然这通常不是推荐的做法,因为 '#include' 是更标准的方法