C语言中,数据类型可分为:

  1. 基本数据类型
  2. 构造数据类型
  3. 指针类型
  4. 空类型四大类

C语言的基本数据类型_自动转换

 

最常用的整型, 实型与字符型(char,int,float,double):

C语言的基本数据类型_符号常量_02

 

整型数据是指不带小数的数字(int,short int,long int, unsigned int, unsigned short int,unsigned long int):

C语言的基本数据类型_自动转换_03

 

注:

  • ​int​​​ ​​short int​​ ​​long int​​是根据编译环境的不同,所取范围不同。
  • 而其中​​short int​​和​​long int​​至少是表中所写范围, 但是​​int​​在表中是以16位编译环境写的取值范围。
  • 另外 c语言​​int​​的取值范围在于他占用的字节数 ,不同的编译器,规定是不一样。
  • ANSI标准定义​​int​​是占2个字节,TC是按ANSI标准的,它的​​int​​是占2个字节的。但是在VC里,一个​​int​​是占4个字节的。

浮点数据是指带小数的数字。

生活中有很多信息适合使用浮点型数据来表示,比如:人的体重(单位:公斤)、商品价格、圆周率等等。

因为精度的不同又分为3种(float,double,long double):

 

C语言的基本数据类型_数据类型_04

注:C语言中不存在字符串变量,字符串只能存在字符数组中,这个后面会讲。

格式化输出语句

格式化输出语句,也可以说是占位输出,是将各种类型的数据按照格式化后的类型及指定的位置从​​计算机​​上显示。

其格式为:​​printf("输出格式符",输出项)​​;

C语言的基本数据类型_c语言_05

 

 

当输出语句中包含普通字符时,可以采用一下格式:

printf("普通字符输出格式符", 输出项);

C语言的基本数据类型_符号常量_06

 

注意:格式符个数要与变量、常量或者表达式的个数一一对应

不可改变的常量

在程序执行过程中,值不发生改变的量称为常量

m​TI​anyan: C语言的常量可以分为直接常量和符号常量。

  • 直接常量也称为字面量,是可以直接拿来使用,无需说明的量,比如:
  • 整型常量:13、0、-13;
  • 实型常量:13.33、-24.4;
  • 字符常量:‘a’、‘M’
  • 字符串常量:”I love imooc!”

C语言的基本数据类型_数据类型_07

 

在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。符号常量在使用之前必须先定义,其一般形式为:



​#define 标识符 常量值​

#include 
#define POCKETMONEY 10 //定义常量及常量值
int main()
{
// POCKETMONEY = 12; //小明私自增加零花钱对吗?
printf("小明今天又得到%d元零花钱
", POCKETMONEY);
return 0;
}

符号常量不可以被改变。

自动类型转换

数据类型存在自动转换的情况.
自动转换发生在不同数据类型运算时,在编译的时候自动完成

​正在上传…重新上传取消​

​char​​​类型数据转换为​​int​​​类型数据遵循​​ASCII​​码中的对应值.

注:

字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换

char可以转换为int,int可以转换为double,char可以转换为double。但是不可以反向。

强制类型转换

强制类型转换是通过定义类型转换运算来实现的。其一般形式为:

(数据类型) (表达式)

其作用是把表达式的运算结果强制转换成类型说明符所表示的类型

在使用强制转换时应注意以下问题:

  1. 数据类型和表达式都必须加括号, 如把​​(int)(x/2+y)​​写成​​(int)x/2+y​​则成了把​​x​​转换成​​int​​型之后再除​​2​​再与​​y​​相加了。
  2. 转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换
  3. 强制转换后的运算结果不遵循四舍五入原则。