手记

【C 基础】数据类型

数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。变量的类型决定了变量存储占用的空间,以及如何解释存储的位模式。

四大数据类型

在 C 语言中数据类型可分为四大数据类型,分别如下所示:

  1. 算术类型:包含整数类型、浮点类型
  2. 枚举类型:被用来定义在程序中只能赋予其一定的离散整数值的变量。
  3. void 类型:类型说明符 void 表明没有可用的值。
  4. 派生类型:包括指针类型、数组类型、结构类型、共用体类型和函数类型。

算数类型

整数类型

整数类型是指不包含小数点的数据,生活场景中的电影票数量、人的年龄等。

下表列出了关于标准整数类型的存储大小和值范围的细节:

类型 存储大小 值范围
char 1 byte -128 到 127 或 0 到 255
unsigned char 1 byte 0 到 255
signed char 1 byte -128 到 127
int 2 或 4 bytes -32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647
unsigned int 2 或 4 bytes 0 到 65,535 或 0 到 4,294,967,295
short 2 bytes -32,768 到 32,767
unsigned short 2 bytes 0 到 65,535
long 4 bytes -2,147,483,648 到 2,147,483,647
unsigned long 4 bytes 0 到 4,294,967,295

浮点类型

浮点类型是带小数的数据类型,生活场景中商品金额、物体重量等都为浮点类型。

类型 存储大小 值范围 精度
float 4 byte 1.2E-38 到 3.4E+38 6 位小数
double 8 byte 2.3E-308 到 1.7E+308 15 位小数
long double 10 byte 3.4E-4932 到 1.1E+4932 19 位小数

实例

“村里有个姑娘叫小芳,年方十八,身高1米68,长得美丽又大方。”

#include <stdio.h>
int main(){
    char name = "xiaofang";
    int age = 18;
    float height = 1.68;
    
    printf("村里有个姑娘叫%c,年方%d,身高%f,长得美丽又大方。", name, age, height);
	return 0;
}

基本类型之间的数据转换

常量

常量:指程序运行期间不会改变的变量,分为直接常量符号常量

直接常量

#include <stdio.h>
int main()
{
    printf("PI %d", 3.1415926); // 无需声明的量
    return 0;  
}

符号常量

#include <stdio.h>
#define PI 3.1415926
int main()
{
    printf("PI %d", PI); // 使用之前先使用符号 #define 定义
    return 0;  
}

类型转换

自动转换

自动类型转换在编译阶段完成

#include <stdio.h>
int main()
{
    char c = 'C';
    int n =  c; 
    float f =  c; 
    double d =   c; 
    printf("%d %f %lf", n, f, d); // 67 67.000000 67.000000
    return 0;    
}

强制转换

需要手动定义进行强制转换,形式为:(数据类型) (表达式)

#include <stdio.h>
#define PI 3.1415926
int main()
{
    int intPI = (int)(PI);
    printf("intPI 的整数部分是%d\n", intPI); // intPI 的整数部分是3
    return 0;
}
0人推荐
随时随地看视频
慕课网APP