阅读:0
作者:严长生
什么是标量类型(Scalar type)
标量类型(Scalar type)是相对复合类型(Compound type)来说的:标量类型只能有一个值,而复合类型可以包含多个值。复合类型是由标量类型构成的。
在C语言中,整数类型(int、short、long等)、字符类型(char、wchar_t等)、枚举类型(enum)、小数类型(float、double等)、布尔类型(bool)都属于标量类型,一份标量类型的数据只能包含一个值。例如:
结构体(struct)、数组、字符串都属于复合类型,一份复合类型的数据可以包含多个标量类型的值,也可以包含其他复合类型的值。例如:
在C语言中,整数类型(int、short、long等)、字符类型(char、wchar_t等)、枚举类型(enum)、小数类型(float、double等)、布尔类型(bool)都属于标量类型,一份标量类型的数据只能包含一个值。例如:
int n = 100; char c = 'A';n 和 c 都是标量类型的数据:n 就表示
100
这一个整数,c 就表示'A'
这一个字符。当然,它们值可以被改变,但无论如何,它们都只能表示一个值。结构体(struct)、数组、字符串都属于复合类型,一份复合类型的数据可以包含多个标量类型的值,也可以包含其他复合类型的值。例如:
int nums[ ] = { 5, 38, 49, 92 }; struct complex{ double real; double imag }; struct complex c1 = {12.6, 80.12}; struct stu{ char name[20]; //姓名 int num; //学号 int age; //年龄 float score; //成绩 }; struct stu s1 = {"Tom", 10, 18, 95.5};nums、c1 和 s1 都是复合类型的数据:nums 是一个数组,它包含了四个 int 类型(标量类型)的值;c1 是一个结构体变量,它包含了两个 double 类型(标量类型)的值;s1 是一个结构体变量,它除了包含三个标量类型的值,还包含了一个复合类型的值,就是数组。