4、数据类型

目录

1. 基本类型

(1)数值类型

(2)字符类型

(3)布尔类型

2. 构造类型

3. 空类型


本文主要介绍基本数据类型。

1. 基本类型

基本类型也就是C语言中的基础类型,其中包括整型、字符型、浮点型(实型)、布尔型。

(1)数值类型

数值类型主要分为整型和实型(浮点类型)两大类。其中,整型按符号划分,可以分为有符号和无符号两大类;按长度划分,可以分为普通整型、短整型和长整型3类:

实型主要包括单精度型、双精度型和长双精度型:

在程序中使用实型数据时需要注意以下几点

a.实数的相加

实型数据的有效数字是有限制的,如单精度float的有效数字是6位或7位,如果将数字86041238.78赋值给float类型,显示的数字可能是86041240.00,个位数8被四舍五入,小数位被忽略。如果将86041238.78与5相加,输出的结果为86041245.00,而不是86041243.78。

b.实数与零的比较

在开发程序的过程中,经常会进行两个实数的比较,此时尽量不要使用“==”或“!=”运算符,而应使用“>=”或“<=”之类的运算符,许多程序开发人员在此经常犯错,例如:

上述代码并不是高质量的代码,如果程序要求的精度非常高,可能会产生未知的结果。通常在比较实数时需要定义实数的精度。

利用实数精度进行实数比较,示例如下:

#include <stdio.h>

int main()
{
       float eps = 0.0000001;    //定义0的精度
       float fvar = 0.00001;
       if (fvar >= -eps && fvar <= eps) //超出精度
              printf("等于0!\n", fvar);
       else
              printf("不等于0!\n",10);
}

运行结果:

(2)字符类型

字符数据使用“' '”来表示,如'A'、'B'、'C'等。定义字符变量可以使用char关键字,例如:

在计算机中字符是以ASCII码的形式存储的,因此可以直接将整数赋值给字符变量,例如:

输出结果为a,因为97对应的ASCII码为a

(3)布尔类型

在逻辑判断中,结果通常只有真和假两个值。C语言中提供了布尔类型bool来描述真和假。bool类型共有两个取值,分别为true和false。顾名思义,true表示真,false表示假。在程序中,bool类型被作为整数类型对待,false表示0,true表示1。将bool类型赋值给整型是合法的,反之,将整型赋值给bool类型也是合法的,例如

2. 构造类型

构造类型就是使用基本类型的数据,或者使用已经构造好的数据类型,进行添加、设计,构造出新的数据类型,使新构造的类型能满足待解决问题所需要的数据类型。通过构造类型的说明可以看出,它并不像基本类型那样简单,而是由多种类型组合而成的新类型,其中每一组成部分称为构造类型的成员。构造类型包括指针类型、枚举类型、数组类型、结构体类型、公用体类型和类类型6种形式。

3. 空类型

空类型的关键字是void,其主要作用在于如下两点:

a.对函数返回的限定。

b.对函数参数的限定。

也就是说,一般一个函数都具有一个返回值,将其值返回调用者。这个返回值应该是具有特定的类型,如整型int。但是当函数不必返回一个值时,就可以使用空类型设定返回值的类型。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值