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);
}
相关推荐
xiangyun6110 小时前
【408数据结构 08】队列:循环队列判空判满,408年年考,一次讲清
c语言·开发语言·数据结构·c++·算法
xiangyun6110 小时前
【408数据结构 06】双链表、循环链表、静态链表
c语言·开发语言·数据结构·c++·算法
Logic10112 小时前
C语言/数据结构数组题解:数字列表加一(Plus One)——进位处理与数组扩展
c语言·数据结构·模拟·数组·时间复杂度·算法题·进位
Escalating_xu12 小时前
【C语言常见概念】从第一行代码到字符串结束标志:一次打通编译、main、ASCII、转义字符与注释
c语言·c++
Navigator_Z12 小时前
LeetCode //C - 1250. Check If It Is a Good Array
c语言·算法·leetcode
SuperByteMaster14 小时前
freertos 任务创建方式
c语言
susplus15 小时前
【传感器DS18B20】51单片机上实现温度采集
c语言·51单片机·ds18b20·温度采集
Logic10116 小时前
C语言/数据结构位运算题解:异或XOR找出流水线上的“独特零件编号“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
山下梅子酒22517 小时前
洛谷-入门-B2043
c语言
幼儿园蛋小黑18 小时前
【无标题】C语言变量,类型转换,运算符,输入和输出
c语言·嵌入式实时数据库