C语言_数据类型——学习笔记二

数据类型

一、常量

常量的表示方法;

1、const关键字

     修饰常变量。
  作用:定义一种变量,这种变量的值不能被修改,在整个作用域都维持原值。
  eg: const int a = 1;   // const修饰的常变量
注意:
  • const修饰的常变量,本质上是变量。
  • 但具有常属性,不能被修改。

2、define定义的标识符常量

   #define命令定义标识符常量,该标识符常量在程序中是个定值,
   作用:通常用于代表数组容量或涉及数学的常量等。
   eg: #define PI   3.14159
      #define SIZE 10    // 此处SIZE代表数组元素个数

3、枚举常量 枚举(Enum)类型

      使用enum枚举类型,列出所有可能会用到的取值,并给它们取一个名字。
     作用:代表实际意义的常量,数值较小且为非负整数,如一周7天等。

二、变量

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
字符型存储和读取过程:

存储:字符’a’——>码值 (97)——>二进制 (1100001)——>存储()
读取:二进制(1100001)——>码值(97)——> 字符’a’——>读取(显示)
字符和码值的对应关系是通过字符编码表决定的(是规定好)ascll码表部分。

比较全的ascll码表参考:
ASCII码
在这里插入图片描述

三、基础类型数据

基本数据类型:
在这里插入图片描述
在这里插入图片描述

1、整型数据可以用十进制,八进制和十六进制三种形式表达。

考虑到移植性:最佳妥协方案就是把存储于int型变量的值限制在signed int和unsigned int的交集中,这可以获得最大程度上的可移植性。

在这里插入图片描述

2、实数(浮点)型

    有效数字是指包括整数部分+小数部分的全部数字总数。
   eg:
 #include<stdio.h>
int main()
{
	float a;
	double b;
	a = 33333.33333;
	b = 33333.333333;
	printf(" a = %f , b = %lf \n" , a , b );
 return 0;


程序执行结果如下:

a=33333.332031 , b=33333.333333


可以看出,由于a为单精度类型,有效数字长度为7位,因此a的小数点后4位并不是原先的数据而由于b为双精度类型,有效数字为16位,因此b的显示结果就是实际b的数值。

在这里插入图片描述

3、字符类型

  • 一个整型变量也可以存储一个字符常量,而且也是将该字符的ASCH码值(无符号整数)存储到内存单元中。
  • 字符变量和整型变量在内存中存储的内容实质是一样的。
    注意:
  • 字符可以是字符集中任意字符。但数字被定义为字符型之后就不能参与数值运算。如’5’和5是不同的。‘5’是字符常量,不能直接参与运算,而只能以其ASCⅡ码值(053)来参与运算。
  • C语言中还存在一种特殊的字符常量——转义字符。转义字符以反斜线“\”开头

在这里插入图片描述

4、枚举类型

在枚举类型的定义中列举出所有可能的取值,被定义为该枚举类型的变量取值不能超过定义的范围。
 为了处理有些变量的取值被限定在一个有限的范围内。例如:一周7天,一年12个月等。

注意:

  • 枚举类型是一种基本数据类型,而不是一种构造类型,因为它不能再分解为任何基本类型。
  • 枚举类型定义的一般形式如下。

enum 枚举名
{
枚举值表
};

  • enum是关键字,标识枚举类型,定义枚举类型必须以enum开头。
  • 在定义枚举类型时花括号中的名字称为枚举元素或枚举常量。它们是程序设计者自己指定的,命名规则与标识符相同。这些名字并无固定的含义,只是一个符号,程序设计者仅仅是为了提高程序的可读性才使用这些名字。
  • 枚举元素不是变量,不能改变其值。如下面这些赋值是不对的:
    red=8;yellow=9;

在这里插入图片描述

5、枚举类型

printf的格式控制字符串组成: %[flags][width][.prec][length]type

分别代表为:%[标志][最小宽度][.精度][类型长度]类型。

详细参考链接:
C语言printf函数使用详细说明

本文是学习笔记的整合,参考链接有:
1、变量
2、常量
3、基本数据类型

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

大山很山

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

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

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

打赏作者

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

抵扣说明:

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

余额充值