我知道 C 中的基本数据类型 - char,int,float等。但 C 语言中究竟是什么派生数据类型?
答案 0 :(得分:5)
6.2.5.20 the standard (well, a draft; hooray free :)涵盖派生类型:
20可以从对象,函数和构造中构造任意数量的派生类型 不完整的类型,如下:
- 数组类型描述了一个连续分配的非空对象集 特定的成员对象类型,称为元素类型。数组类型是 以其元素类型和数组中元素的数量为特征。一个 数组类型据说是从它的元素类型派生的,如果它的元素类型是T
,那么 数组类型有时称为T
的数组。从中构造数组类型 元素类型称为数组类型派生 - 结构类型描述顺序分配的非空成员对象集 (并且,在某些情况下,是一个不完整的数组),每个都有一个可选的 指定的名称和可能不同的类型 - 联合类型描述了一组重叠的非成员对象,每个成员对象 它具有可选的指定名称和可能不同的类型 - 函数类型描述具有指定返回类型的函数。功能类型是 以其返回类型及其参数的数量和类型为特征。一个 函数类型据说是从它的返回类型派生的,如果它的返回类型是T
,那么 函数类型有时称为函数返回T
。建设一个 返回类型的函数类型称为函数类型派生 - 指针类型可以从函数类型,对象类型或不完整中派生 type,称为引用类型。指针类型描述其值的对象 提供对引用类型的实体的引用。从中派生的指针类型 引用的类型T
有时称为指向T
的指针。建设一个 引用类型的指针类型称为指针类型派生。这些构造派生类型的方法可以递归应用。
答案 1 :(得分:3)
从基本数据类型派生的数据类型称为派生数据类型。派生数据类型不会创建新数据类型,而是为基本数据类型添加一些功能。
在C中,两种派生数据类型是:Array&指针。
数组:数组是相同类型的变量的集合。它们存储在传染性内存分配中。
例如
int a[10];
char chi [20];
指针:
指针是一个特殊变量,它保存另一个变量的内存地址(内存中的位置)。
int i=10;
int *j;
j=&i;
这里,j是一个整数指针,因为它保存整数变量i的地址。
答案 2 :(得分:2)
派生数据类型只不过是从基础数据类型构建的。 例如指针,结构,联合等。 int i; INT * PTR; ptr =& i; 'i'是整数类型的变量,它是基本数据类型。 这就是指针必须基于数据类型的原因。
答案 3 :(得分:0)
派生数据类型是一种复杂的分类,它标识一种或多种数据类型,由称为原始数据类型的简单数据类型组成。派生数据类型具有高级属性,并且远远超出了作为其基本构建块的基本原始数据类型。
答案 4 :(得分:0)
派生数据类型派生自基础数据类型(即:int,float,char,double,void)。它们不会创建新的数据类型,而是使用基本数据类型来添加额外的功能。例如:数组:数组是相同类型的变量的集合。因此,数组是派生数据类型。