C语言-常量

什么是常量?

答:常量是在程序执行过程中,其值不发生改变的量,常量分为++直接常量++ 和++符号常量++两种。

其中直接常量又可以分为整型常量、实型常量、字符型常量、字符串常量。

直接常量

1.整型常量

整型常量即整数,包括正整数,负整数和0。c语言中常量 可以用八进制,十进制和十六进制表示。

十进制很简单,就是我们一般使用的进制。

八进制 :以数字0为前缀,后面由0~7组成,例如066,01234567等等;注意八进制数是无符号数即没有负号 - 和正号 + 。这意味着八进制数只能是正数,如 -0123是错误的。

十六进制 :以0x0X为前缀,注意是数字的零,不是字母o,x大小写都是正确的。后面是由0~9和字母A~F(大小写均可)组成,如0x12ab。同八进制数一样十六进制数也是无符号数。

2.实型常量

实性常量即实数,又称为浮点数。在c语言中实数只能用十进制数来表示,实数的表示方法有两种:小数形式和指数形式。

(1)小数形式:由整数部分,小数点和小数部分组成,当小数部分或整数部分为0时可以省略不写,但是小数点不能省略。例如:1.234 , 3. , -.123等等都是正确的。

注意必须要有小数点,且小数点前后至少一边有数字。

(2)指数形式:由尾数部分,字母e或E和指数部分组成。如1.234e11,表示为1.234×10¹¹。

注意e或E前后必须要有数字,并且指数部分只能是整数。

3.字符型常量

字符常量指单个字符,用一对单引号及其括号所括起来的字符来表示。如 'a' , 'c' , '+' 等等。

注意以下三点:

(1):字符常量只能用单引号括起来,不能用其他符号。

(2):字符常量只能是单个字符,不能用多个字符。

(3):字符可以是ASCLL字符集中的任意字符。

使用字符常量时,每个字符在内存中占用一个字符,用于储存它的ASCLL码值。所以c语言的字符量具有数值特性,可以像整数一样参与运算,此时相当于字符的ASCLL码值参与运算。

对于控制字符(回车换行等)和不可见字符,在c语言中通过转义字符来表示。如:回车换行\n。

4.字符串常量

字符串常量是由一对双引号""括起来的零个或多个字符序列,如"HelloWorld"。

字符串里面可以有数字,字母,汉字,空格等等。

字符串还可以使用空字符,如:""表示空串,即不包含任何字符。

cpp 复制代码
main()
{
	3.14,-3e-2;
	10,2;
	'a','A','D';
	"abcdefg","hjds";
}

符号常量

在c语言中,可以用一个标识符来表示一个常量,称为符号常量。

如宏定义:

define 标识符 常量值

举例:

define PI 3.1415926

cs 复制代码
#define PI 3.14
main()
{
    int r;
	scanf("%d",&r);
	printf("圆的周长为: %f\n",2*PI*r);
}
相关推荐
灯厂码农3 小时前
C语言动态内存分配完全指南(malloc、calloc、realloc、free)
java·c语言·算法
wuyk5554 小时前
24. C 语言模块化:不是拆几个.c 文件那么简单
c语言·开发语言·stm32·单片机
qq_241585614 小时前
可用在中断中浮点数打印类似printf
c语言
C语言小火车6 小时前
C++ 快速排序(Quick Sort)深度精讲:分治思想、Lomuto 分区法及三数取中优化,面试手撕必会
c语言·开发语言·c++·面试·排序算法·快速排序
aaaameliaaa7 小时前
进制练习题【找出只出现一次的数字、交换两个变量(不创建临时变量)、统计二进制中1的个数、打印整数二进制的奇数位和偶数位、求两个数二进制中不同位的个数】
c语言·数据结构·笔记·算法
灯厂码农8 小时前
C语言内存管理——内存对齐与共用体union
linux·服务器·c语言
伏 念10 小时前
AI Coding 零基础实战教程
c语言·进程·预处理
你家人养牛10 小时前
OOC Relation Plugin:C 语言面向对象 开发的高效辅助工具
c语言·vscode
东华万里10 小时前
第30篇 代码习惯 初学C与数据结构有感
c语言·数据结构·大学生专区
想你依然心痛10 小时前
嵌入式C代码规范:MISRA-C 2012核心规则解读——类型安全与未定义行为深度剖析
c语言·安全·代码规范