C语言数据类型,变量常量篇

一、数据类型

在这里插入图片描述

C语言中的关键字:

在这里插入图片描述

二、常量

常量是指:
在程序运行过程中,其值不发生变化的量。常量又可以分为整型、实型(也称浮点型)、字符型和字符串型。
在这里插入图片描述

三、变量

在这里插入图片描述
变量代表内存中具有特定属性的一个存储单元,它用来存放数据,即变量的值。这些值在程序执行过程中是可以改变的。
变量名实际上以一个名字代表一个对应的存储单元地址,编译、链接程序时,由编译系统为每个变量名分配对应的内存地址(就是空间)。从变量中取值实际上是通过变量名找到内存中存储单元的地址,并从该存储单元中读取数据,如上图所示。

变量的命名规定如下:

c语言规定标识符只能由字母、数字和下划线三种字符组成,并且第一个字符必须为字母或下划线例如,

sum,_total,month,Student—name,lotus一1一2一3,BASIC,li_ling

是正确的;而

M.D.JOhn,¥123,3D64,a>b

是错误的。
编译系统认为大写字母和小写字母是不同的字符,因此c语言要求对所有用到的变量改强
制定义,即“先定义,后使用"。·同时在选择变量名和其他标识符时,应尽量做到“见名知意
即选择具有含义的英文单词(或其缩与)作为标识符.注意,变量名不能与关键字同名!

四、整型数据

4.1符号常量

#include <stdio.h>

#define PI 3+5
int main() {
    int i=PI*2;
   printf("i=%d\n",i);
}

最终输出结果是13,因为符号常量PI是直接替换的效果。因此不能做计算写成PI=8

4.2整型变量

int i

变量 i 是4个字节。

五、浮点型数据

5.1浮点型常量

小数形式0.123
指数形式3e-3(为3* 1 0 − 3 10^-3 103),即0.003

注意:
字母E、e的前面必须有数字,且e后面的指数必须为整数。
正确示范:

le3、1.8e-3、-123e-6、-.1e-3

错误示范:

e3、2.1e3.5、.e3、e

5.2浮点型变量

通过float来定义,f占用4个字节的空间。

六、字符型数据

6.1字符型常量

用单括号引起来的一个字符就是字符型常量,且只能包含一个字符!
例如:
正确的:

‘a’、‘A’、'1'、‘ ’

错误的:

'abd' 、"a"、" "

下表给出了各种转义字符以及其作用:

转义字符作 用
\n换行
\b退格
\反斜杠

6.2字符数据在内存中的存储形式以及其使用方法

用char关键字定义,一个字符型变量占用1字节空间
一个字符常量存放到一个字符型变量中时,实际上并不是把该字符的字型存放到内存中,而是把该字符的ASCII码值存放到存储单元中,每个字符的ASCII码详见附录A
在这里插入图片描述
如上图,字符串数据和整型数据之间就可以通用。
所以,字符型数据既可以输出字符形式,也可以输出整数形式。

#include <stdio.h>
int main(){
	char c='A';
	printf("%c\n",c+32);
	printf("%d\n",c);
}
使用%c 打印输出字符
使用%d打印输出整数

在这里插入图片描述

查表得,小写字母和大写字母相差32,因此a(97)减去32就可以得到A(65)

七、字符串型变量

字符串型常量是由一对双引号括起来的字符序列·
例如,
合法的字符串型常量:

“HOW do you do”、“CHINA”、"a"和"$123.45"

我们可以用==printf(“How do you do”)==输出一个字符串。
但要注意:

'a'是字符型常量,而"a"是字符串型常量,二者是不同的,

例如,
如果先用语句char定义字符型变量c,后令c=“a”。或c=“CHINA”,
那么这样的赋值都是非法的,原因是
:不可以将字符串型常量赋值给字符型变量
C语言中没有定义字符串型变量的关键字,介绍字符数组时我们将详细讲解如何存放字符串.
C语言规定,在每个字符串型常量的结尾加一个字符串结束标志,以便系统据此判断字符串是否结束,c语言规定以字符’\0’作为字符串结束标志。
例如,
字符型常量“CHINA”,在内存中的存储结果如下图所示,它占用的内存单元不是5个字
符,而是6个字符,即大小为6字节,最后一个字符为’\0
然而,在输出时不输出’\0’因为’\0’无法显示.
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rock Hang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值