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);
}
相关推荐
宵时待雨24 分钟前
数据结构(初阶)笔记归纳1:复杂度讲解
c语言·数据结构·笔记
安生生申1 小时前
STM32 ESP8266连接ONENET
c语言·stm32·单片机·嵌入式硬件·esp8266
范纹杉想快点毕业3 小时前
嵌入式通信核心架构:从状态机、环形队列到多协议融合
linux·运维·c语言·算法·设计模式
网安_秋刀鱼3 小时前
【java安全】反序列化 - CC1链
java·c语言·安全
Ljubim.te4 小时前
inline介绍,宏定义的注意事项以及nullptr
c语言·开发语言·c++
苦藤新鸡4 小时前
6.三数之和
c语言·c++·算法·力扣
TDengine (老段)5 小时前
TDengine C/C++ 连接器入门指南
大数据·c语言·数据库·c++·物联网·时序数据库·tdengine
JAY_LIN——86 小时前
C语言内存函数memcpy、memmove、menset、mencmp
c语言·开发语言
松涛和鸣6 小时前
DAY47 FrameBuffer
c语言·数据库·单片机·sqlite·html
福楠7 小时前
C++ STL | list
c语言·开发语言·数据结构·c++·算法·list