关键字
C语言的关键字共有32个,根据关键字的作用,可分为数据类型关键字,控制语句关键字。
-
数据类型关键字
void ; char ; short ; int lang ; float ; double ; signed ; unsigned ; truct ; union; enum ; typedef ; sizeof ; auto ; static ; register ; extern ; const ;volatile -
流程控制关键字
if else switch case default for do while return continue break goto
1.sizeof
sizeof计算类型的大小或变量的大小,也就是字节个数
- 示例代码
#include <stdio.h>
int main()
{
printf("char size: %d\n", sizeof(char));
printf("int size: %d\n", sizeof(int));
printf("float size: %d\n", sizeof(float));
return 0;
}
结果展示:
2.typedef
typedef是在计算机编程语言中为复杂声明定义简单的别名,它本身是一种存储类的关键字,
- 与auto、extern、mutable、static、register等关键字不能出现在同一个表达式中。
- 将合法的变量名变成类型,不能存放数据
- intpint 是合法指针, typedef intpint;pint就变成了一种类型,是指针类型。
3.static
C语言中static关键字修饰变量和函数,
特点:当函数被调用,静态关键字只被执行一次,再之后的过程中,这个函数再次被调用,静态关键字不会被执行,也就是说,静态关键字只在函数中初始化一次。
- 示例代码
#include <stdio.h>
void fun()
{
//非静态的局部变量,调用时分配空间,调用完释放空间
int x = 0;
//局部变量加静态关键字,延长其寿命 .data
static int y = 0;
++x;
++y;
printf("x=%d y=%d\n", x, y);
}
int main()
{
int a = 10;
for (int i = 0; i < 10; ++i)
{
fun();
}
return 0;
}
- 输出展示:
4.extern
-
外部关键字,告诉编译器,此处定义的全局变量和定义的函数不在本文件但是在同一个工程的其他文件中。
extern int g_max;
-
若全局变量前加static,则只能在本文件中可见,超出文件不能见
5.const
- 只读变量(可读,不可写),无论是全局常变量还是局部常变量都必须初始化赋值
- 用const定义常变量的方法: const int a=10; int const a=10;
今天也要好好学习呀~