自学内容网 自学内容网

C语言基本知识 2.5 各种数据类型

C语言提供了多种数据类型,用于表示不同种类的数据,以下是详细介绍:
 
基本数据类型
 
整数类型:
 
-  int :是最常用的整数类型,通常在不同的系统上其表示范围有所不同,但一般为一个有符号的32位整数,取值范围大致是 -2147483648 到 2147483647。例如:
int num = 10;

-  short :短整数类型,一般是有符号的16位整数,取值范围相对较小,大约是 -32768 到 32767。比如:
short smallNum = 5;
-  long :长整数类型,在32位系统上通常是有符号的32位整数,与 int 范围可能相同;在64位系统上一般是有符号的64位整数,取值范围更大。示例:
long bigNum = 1234567890L; // 注意这里要加L后缀表示长整数类型
 
 
-  long long :长长整数类型,是有符号的64位整数,能表示更大范围的整数,取值范围大致是 -9223372036854775808 到 9223372036854775807。例如:
long long veryBigNum = 9876543210987654321LL; // 加LL后缀表示长长整数类型
浮点类型:
 
-  float :单精度浮点数类型,用于表示小数。它占用4个字节的内存,有效数字位数相对较少,精度有限。例如:
float fnum = 3.14f; // 注意要加f后缀表示单精度浮点数类型
-  double :双精度浮点数类型,也是用于表示小数,占用8个字节的内存,比 float 具有更高的精度和更大的有效数字位数。比如:
double dnum = 3.141592653589793;
字符类型:
-  char :用于表示单个字符,占用1个字节的内存。字符在C语言中实际上是以ASCII码值的形式存储的。例如:
char ch = 'A'
这里的 ch 存储的实际上是字符 A 的ASCII码值65。
枚举类型
枚举类型( enum )是一种用户自定义的数据类型,它用于列出所有可能的值,这些值是有顺序的、有限的整数常量。例如:
enum Weekdays {
    MONDAY,
    TUESDAY,
    WEDNESDAY,
    THURSDAY,
    FRIDAY,
    SATURDAY,
    SUNDAY
};

enum Weekdays today = FRIDAY;
 
 
在这个例子中,定义了一个枚举类型 Weekdays ,它列出了一周七天的可能取值,然后可以声明一个该枚举类型的变量 today 并赋值为 FRIDAY 。枚举类型中的每个成员默认是从0开始依次递增的整数常量,所以 MONDAY 的值是0, FRIDAY 的值是4等。
指针类型
 
指针类型用于指向其他数据类型的变量、数组、函数等。指针本身存储的是所指向对象的地址。例如:
int num = 10;
int *ptr = # // ptr是指向int类型变量num的指针
这里 ptr 就是一个指向 int 类型的指针,它存储了 num 的地址。
数组类型
数组是一组相同类型数据的集合。例如:
int arr[5]; // 定义了一个包含5个整数元素的数组
数组元素可以通过下标来访问,如 arr[0] 、 arr[1] 等。
结构体类型
结构体类型( struct )是一种用户自定义的数据类型,它允许将不同类型的元素组合在一起,形成一个新的复合数据类型。例如:
struct Student {
    char name[50];
    int age;
    float grade;
};

struct Student stu1;
stu1.age = 20;
strcpy(stu1.name, "John");
stu1.grade = 3.5;
在这个例子中,定义了一个结构体类型 Student ,它包含了学生的姓名、年龄和成绩等不同类型的元素。然后可以声明一个该结构体类型的变量 stu1 ,并对其各个元素进行赋值。
联合体类型
联合体类型( union )也是一种用户自定义的数据类型,它与结构体类似,但不同的是,联合体中的所有成员共享同一块内存空间。例如:
union Data {
    int num;
    float fnum;
};

union Data data;
data.num = 10;
// 当给num赋值后,再访问fnum时,会得到一个与num相关的值(因为共享内存)
在这个例子中,定义了一个联合体类型 Data ,它有两个成员 num 和 fnum ,它们共享同一块内存空间。当给 num 赋值后,再访问 fnum 时,会得到一个与 num 相关的值,这是因为它们共用相同的内存区域。
这些就是C语言中常见的各种数据类型,它们在不同的应用场景中发挥着重要作用,帮助程序员准确地表示和处理各种数据。


原文地址:https://blog.csdn.net/2401_88154394/article/details/143865911

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!