当前位置:网站首页>标识符、关键字、常量 和变量(C语言)
标识符、关键字、常量 和变量(C语言)
2022-08-04 23:59:00 【51CTO】
目录
1 标 识 符
1.1 命名规则
1.2 举例
1.3 命名原则
2 关 键 字
3 常 量
3.1 概念及类型
4 变 量
4.2 常见错误举例
4.3 常变量
1 标 识 符
1.1 命名规则
标识符元素: 字母 (a~z或A~Z)、数字 (0~9)、下划线 等组成。
注意事项: 不能以数字开头 。
大小写敏感: D ream与 d ream是两个不同的标识符。
1.2 举例
1.3 命名原则
书写方便:尽量减少大小写字母之间的频繁切换。
可读性强:见名知意。score_total、score_ave
风格统一:各单词全小写,单词之间加下划线:cnt_pass ,各单词首字母大写,无下划线:
ChinaDream
2 关 键 字
2.1 概念、注意事项
关键字:C语言预留的有特殊用途的标识符称为关键字。
注意事项:关键字不能用作变量名、函数名等。
2.2 ANSIC 32个关键字
int char float double signed register long auto struct union enum unsigned
const if else sizeof static continue do case break goto return volatile while for default switch extern typedef short void
C99 新增5个关键字:
inline restrict _Bool _Complex _Imaginary
C11 新增7个关键字
_Alignas _Alignof _Static _assert _Atomic _Noreturn _Thread _local _Generic
3 常 量
3.1 概念及类型
常量:在整个程序运行期间保持不变的量。
类型: 数值 常量、 字符 常量、 字符串 常量、 符号 常量等。
(1)数值常量
(2)字符常量
概念:使用 单引号 括起来的一个符号,可以是 空格符 。
字符串常量
概念:使用 双引号 括起来的若干个符号,可以是 空串 。
(4)符号常量-宏定义
形式:#define PI 3.14159
#define PRICE 32
作用:增强代码 可读性 、便于 统一修改
特点: 无 数据 类型 ,不安全、 不占空间 , 预处理 阶段, 替换 为其后的数据 通常大写 ,如PI、 PRICE等。
无类型 、无赋值号 、无分号
宏定义举例1 :
举例:#define a 20
#define b a+10
c = b * 5; 请问c的值是多少?
分析: b * 5 = a + 10 * 5 = 20 + 10 * 5 =70 傻瓜似的替换
宏定义举例2:
举例:#define a 20
#define b ( a+10 )
c = b * 5; 请问c的值是多少?
分析:b*5 = ( a + 10 ) * 5 = ( 20 + 10 ) * 5 =150
4 变 量
4.1 概念及定义格式
变量:其 值 可以改 变 的、有 名字 的存储 区域 。
格式:类型名 变量名 [ =初始化值 ] ,
int a; //先定义,后赋值
a = 2;
int b = 3; //定义时,初始化
4.2 常见错误举例
举例1:当定义同类型的多个变量时,变量名用逗号间隔。
举例2:在定义时多个变量不允许连续赋初值。
(1) int a=b=c=5; ×
(2) int a,b,c;
a=b=c=5; √
4.3 常变量
概念:又称 只读变量 ,在变量定义前加const(C89)
举例: const double PI = 3.14159 ;
注意事项: 赋值号 、 分号 、外加 const
4.4 宏定义与常变量异同
相同点:其值都不可以改变,都属于“常量”
差异:
边栏推荐
- First, the basic concept of reptiles
- ansible学习笔记分享-含剧本示例
- Day118.尚医通:订单列表、详情、支付
- 【LeetCode】矩阵模拟相关题目汇总
- Nuclei(二)进阶——深入理解workflows、Matchers和Extractors
- 365天深度学习训练营-学习线路
- [Happy Qixi Festival] How does Nacos realize the service registration function?
- 矩阵数学原理
- Chinese and Japanese color style
- Brainstorm: Complete Backpack
猜你喜欢

3. Actual combat---crawl the result page corresponding to Baidu's specified entry (a simple page collector)

Vscode连接远程服务器(一套配置成功)

看图识字,DELL SC4020 / SCv2000 控制器更换过程

【论文笔记】—低照度图像增强—Unsupervised—EnlightenGAN—2019-TIP

Privacy Computing Overview

统计单词(DAY 101)华中科技大学考研机试题

Nuclei (2) Advanced - In-depth understanding of workflows, Matchers and Extractors
![[CVA Valuation Training Camp] Financial Modeling Guide - Lecture 1](/img/8b/360df9a9094037dc358cb21c60cdc8.png)
[CVA Valuation Training Camp] Financial Modeling Guide - Lecture 1

子连接中的参数传递

测试经理要不要做测试执行?
随机推荐
IDEA 文件编码修改
Implementing class target method exception using proxy object execution
Uniapp dynamic sliding navigation effect demo (finishing)
Cloud native - Kubernetes 】 【 scheduling constraints
uniapp sharing function - share to friends group chat circle of friends effect (sorting)
【LeetCode】滑动窗口题解汇总
Nuclei(二)进阶——深入理解workflows、Matchers和Extractors
golang 协程的实现原理
LeetCode Hot 100
KT148A语音芯片怎么烧录语音进入芯片里面通过串口和电脑端的工具
~ hand AHB - APB Bridge 】 【 AMBA AHB bus
MySQL基础篇【聚合函数】
软件质量评估的通用模型
情侣牵手[贪心 & 抽象]
The market value of 360 has evaporated by 390 billion in four years. Can government and enterprise security save lives?
npm基本操作及命令详解
What is next-generation modeling (with learning materials)
从单体架构迁移到 CQRS 后,我觉得 DDD 并不可怕
10 种常见的BUG分类
Some thoughts on writing





