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

一、数据类型

C语言数据类型,变量常量篇_第1张图片

C语言中的关键字:

C语言数据类型,变量常量篇_第2张图片

二、常量

常量是指:
在程序运行过程中,其值不发生变化的量。常量又可以分为整型、实型(也称浮点型)、字符型和字符串型。
C语言数据类型,变量常量篇_第3张图片

三、变量

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

变量的命名规定如下:

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

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

是正确的;而

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

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

四、整型数据

4.1符号常量

#include 

#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
C语言数据类型,变量常量篇_第5张图片
如上图,字符串数据和整型数据之间就可以通用。
所以,字符型数据既可以输出字符形式,也可以输出整数形式。

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

C语言数据类型,变量常量篇_第6张图片

查表得,小写字母和大写字母相差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’无法显示.
在这里插入图片描述

你可能感兴趣的:(C语言学习,c语言,算法,c++)