什么是C语言的合法正确标识符?什么是C语言关键字?

一、C语言标识符

1.1 标识符的概念

标识符是用户编程时使用的名字,像变量名称、函数名称、数据类型等都属于标识符。C语言标识符是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义,标识符由字母(A-Z,a-z)、数字(0-9)、下划线“_”组成,并且首字符不能是数字,但可以是字母或者下划线

1.2 C语言中合法的标识符有以下这些:

  • a
  • a1
  • Student_1
  • b123456_a12334__。

1.3 C语言中非法的标识符有以下这些:

  • 1a 不能以数字开头
  • sum%3 %为非法字符
  • *a *为非法字符
  • &&b 必须以字母或下划线开头且&为非法字符

1.4 标识符使用注意事项:

  • 所定义的标识符不能与关键字相同,也不能和用户自定义的函数或C语言库函数同名,否则会出现错误。例如:if、for、while等但If、For、While都是合法的。
  • 标识符长度由编译系统限制,也被操作系统限制。C89标准长度限制是8字符,C99标准扩充长度,大部分工业标准都更长。
  • 标识符严格区分大小写,一般变量名小写,符号常量命名用大写
  • 标识符是用于标识某个量的符号,因此,命名应尽量便于阅读和理解,作到“顾名思义”。
  • 如果在某个编译器中规定标识符前128位有效,当两个标识符前128位相同时,则被认为是同一个标识符。

二、C语言关键字

2.1 C语言关键字概念

关键字(Keywords)是由C语言规定的具有特定意义的字符串,也称为保留字,如 int、char、long、float、unsigned 、struct、typedef等。所定义的标识符不能与关键字相同,否则会出现错误。

2.2 C语言中关键字有哪些

1. 关于控制语句的关键字

循环语句
for一种循环语句
do循环语句的循环体
while循环语句的循环条件
条件判断语句
if条件语句
else条件语句否定分支(与 if 连用)
switch用于开关语句
case开关语句分支
default开关语句中的“其他”分支
跳转语句
goto无条件跳转语句
continue结束当前循环,开始下一轮循环
break跳出当前循环
return子程序返回语句

2. 存储类型关键字

auto声明自动变量 一般不使用,因为当我们声明一个局部变量是默认就是auto
extern声明变量是在其他文件正声明(也可以看做是引用变量),一般也需要经常使用,因为在C语言里面,全局变量和函数都是默认extern的属性
register声明寄存器变量,声明为register的变量是存放在CPU的寄存器里面的,所以读取速度非常快,但是数量有限,当定义的多个register变量,编译器多的那些register变量转换为auto变量。
static声明静态变量

3. 其他关键字

const声明只读变量
sizeof计算数据类型长度
typedef用以给数据类型取别名
volatilevolatile 修饰的变量不允许编译器对与它有关的运算做任何优化;用volatile定义的变量可能会在程序外被改变,所以每次都必须从内存中读取,而不能把他放在cache或寄存器中重复使用。一般用在以下几个地方: a、并行设备的硬件寄存器(如:状态寄存器)  b、一个中断服务子程序中会访问到的非自动变量(Non-automatic variables)  c、多线程应用中被几个任务共享的变量
  • 24
    点赞
  • 112
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值