【C修炼计划】卷贰 ·关键字与标识符

文章目录

  • 卷贰 ·标识符与关键字
    • 一 · 什么是关键字
    • 二 · 关键字的分类
    • 三 · 32个关键字的用法
    • 四 · 标识符
    • 五 · 标识符的命名规则
    • 附 · 参考资料

卷贰 ·标识符与关键字

一 · 什么是关键字


关键字是指被编译器预定义并具有特殊含义的单词。这些单词在程序中有特殊的用途,不能被用作变量名、函数名或其他标识符的名称。

C语言中一共有32个关键字,它们分别是:

  • auto
  • break
  • case
  • char
  • const
  • continue
  • default
  • do
  • double
  • else
  • enum
  • extern
  • float
  • for
  • goto
  • if
  • int
  • long
  • register
  • return
  • short
  • signed
  • sizeof
  • static
  • struct
  • switch
  • typedef
  • union
  • unsigned
  • void
  • volatile
  • while

二 · 关键字的分类


C语言32个关键字大概可以分为以下五类:

类别 关键字
数据类型关键字 char, double, enum, float, int, long, short, signed, struct, unsigned, void
类型限定关键字 const, volatile
控制结构关键字 break, continue, else, do, goto, return, if, while, for, switch, case, defalt
存储类关键字 auto, extern, register, static
其他关键字 sizeof, union, typedef

三 · 32个关键字的用法


这些关键字的具体含义及用法如下:

  • auto:定义局部自动变量,存储于栈区,具有随函数的调用而自动分配的特性
auto int a = 1;
  • break:终端循环语句或switch语句,使程序跳出当前循环或switch
for (int i = 0; i < 10; i++){
	if (i == 5){
		break;
	}
	printf("%d ", i);
}
0 1 2 3 4
  • case:在switch语句中,用于指定各种选择条件
int i = 0;
switch(i) {
    case 0:
        printf("i = 0\n");
        break;
    case 1:
        printf("i = 1\n");
        break;
    default:
        printf("i != 0 and i != 1\n");
        break;
}
  • char:定义字符类型的变量
char str = "点赞!";
  • const:定义常量或只读变量
const int pi = 3;
const char* string = "点赞!";
  • continue:用于跳过当前循环中的剩余语句,继续下一轮循环
for(int i = 0; i < 10; i++) {
    if(i % 2 == 0)
        continue;
    printf("%d ", i);
}
  • default:在switch语句中,用于指定默认的分支
int i = 2;
switch(i) {
    case 0:
        printf("i = 0\n");
        break;
    case 1:
        printf("i = 1\n");
        break;
    default:
        printf("i != 0 and i != 1\n");
        break;
}
  • do:用于定义do-while循环
int i = 0;
do {
    printf("%d ", i);
    i++;
} while(i < 10);
  • double:定义双精度浮点数类型的变量
double pi = 3.1415926;
  • else:在if语句中,当条件为false时执行的语句块
int i = 10;
if(i < 5) {
    printf("i < 5\n");
} else {
    printf("i >= 5\n");
}
  • enum:定义枚举类型
int i = 10;
if(i < 5) {
    printf("i < 5\n");
} else {
    printf("i >= 5\n");
}
  • exturn:声明外部变量或函数
exturn int a;
exturn void func();
  • float:定义单精度浮点数类型的变量
float f = 2.45;
  • for:用于定义for循环
for(int i = 0; i < 10; i++) {
    printf("%d ", i);
}
  • goto:跳转语句,用于无条件跳转到程序中的另一位置
int i = 0;
goto LINE_10;
LINE_5:
printf("i = 5\n");
LINE_10:
i++
if (i == 5):
	goto LINE_5;
  • if:条件语句,用于定义只有当某个条件成立时才执行特定代码块的语句
int i = 10;
if(i < 5) {
    printf("i < 5\n");
} else if(i < 10) {
    printf("5 <= i < 10\n");
} else {
    printf("i >= 10\n");
}
  • int:定义整形类型的变量
int i = 1;
  • long:定义长整形变量
long num = 10000000;
long long s = 1000000000000000000;
  • register:表示变量将被存储在寄存器中
register int count = 0;
  • return:从函数中返回一个值,有时用于退出函数
int func()
{
	printf("点赞,收藏,关注");
	return 0;
}
  • short:定义短整形变量
short num = 32767;
  • signed:表示变量为有符号数
signed int num = -10;
  • sizeof:获取变量或数据类型的大小,单位是字节
int n = 10;
printf("%d", sizeof(n));
  • static:表示变量仅在声明它的文件或函数中可见
static int number = 0;
  • struct:定义结构体类型
struct Person {
	char name = "Tom";
	int age = 25;
	float height = 1.85;
}
  • switch:定义控制流语句
switch (num) {
	case 1:
		printf("The number is 1");
		break;
	case 2:
		printf("The number is 2");
		break;
	default:
		printf("The number is not 1 or 2");
		break;
}
  • typedef:创建自定义的数据类型别名
typedef int myInt;
myInt num = 10;
  • union:定义联合体类型
union data {
	int num;
	float num;
}
  • unsigned:定义无符号变量
unsigned int num = 10;
  • void:表示函数没有返回值或变量没有数据类型
void func()
{
	return;
}
  • volatile:告诉编译器变量有可能在位置的情况下更改
volatile int c = 0;
  • while:在满足条件时重复执行代码块
while (num <= 10) {
	printf("The number is %d", num);
	num++;
}

四 · 标识符


标识符是用来标识变量、函数、数组等程序实体的名称。

标识符必须由字母、数字和下划线组成,且首字符必须为字母或下划线,长度不能超过规定的限制。

以下是C语言中常见的标识符:

  • 变量名:用于表示程序中的变量,如
int age;
  • 函数名:用于表示程序中的函数,如
int main()
  • 数组名:用于表示程序中的数组,如
int arr[10]
  • 结构体名:用于表示程序中的结构体,如
struct student
  • 枚举名:用于表示程序中的枚举类型,如
enum season
  • 宏定义名:用于表示程序中的宏定义,如
#define PI 3.14
  • typedef定义的类型名:用于表示程序中的typedef定义的类型,如
typedef int INT;

注意:

  1. 标识符是区分大小写的,因此变量名Age和age是两个不同的标识符。
  2. 标识符不能使用C语言中的关键字(如if、for、while等),否则会导致编译错误。

五 · 标识符的命名规则


C语言的标识符命名规则如下:

  1. 标识符以26个小写字母、26个大写字母、下划线和10个数字构成;
  2. 标识符必须以字母或下划线开头;
  3. 标识符的长度,c89规定31个字符以内,c99规定63个字符以内;
  4. 不能用关键字作为标识符;
  5. 标识符区分大小写;

以上这些是硬性规则,还有一些需要自己保持的好习惯:

  1. 不使用没有意义的标识符,如asdnfiawenfnadn等;
  2. 使用单个字母作为标识符时,需注释用处。

附 · 参考资料


C语言关键字_零基础学会C语言(CSDN课程):传送
c语言标识符有哪些(百家号):传送
你知道C语言的标识符命名规则是什么吗(php中文网):传送

你可能感兴趣的:(C修炼计划,c语言,开发语言)