(ElemType *)是啥意思?

如题所述

ElemType(也有的书上称之为elemtp)是数据结构的书上为了说明问题而用的一个词。它是element type(“元素的类型”)的简化体。 

因为数据结构是讨论抽象的数据存储和算法的,一种结构中元素的类型不一定是整型、字符型、浮点型或者用户自定义类型,为了不重复说明,使用过程中用“elemtype”代表所有可能的数据类型,简单明了的概括了整体。

例子:ElemType *是定义指向这种类型的指针,p=(ElemType *)malloc(8*sizeof(ElemType)),开辟8个ElemType大小的内存空间,把地址分配给指向ElemType的指针p。

扩展资料:

elem是单词element(元素)的缩写,在程序定义中代表某一不确定的类型,也就是抽象的数据类型。

为了使程序可读性强,并且便于修改,让elem代表多种的数据类型,也就是为int、char等等的数据类型,起了一个别名。

头文件中定义:typedef char elem;  表示:抽象元素类型为char类型,这样定义之后,下面的程序中elem所定义的元素就是char类型的了。

如果需要修改其类型,直接修改char到其他类型,elem便又代表了所修改的类型数据,这也是方便性的体现。

(ElemType *)具体用法是:

template <typename elemtype> typedef struct{ elemtype *elem;

int length;int listsize; }sqlist; 

之后声明变量时要赋予elemtype一个已知的类型,比如int。 struct sqlist<int> a; 对于a这里面的elemtype就变成了int。 不过这是C++的内容,C里面不能用。

如果不用模板,而必须在C语言里用的话,有两种方法: 

1、之前声明它 typedef int elemtype; 

2、之前预编译它 #define elemtype int

参考资料:百度百科:elem type

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-11-17

ElemType(也有的书上称之为elemtp)是数据结构的书上为了说明问题而用的一个词。它是element type(“元素的类型”)的简化体。 

因为数据结构是讨论抽象的数据存储和算法的,一种结构中元素的类型不一定是整型、字符型、浮点型或者用户自定义类型,为了不重复说明,使用过程中用“elemtype”代表所有可能的数据类型,简单明了的概括了整体。在算法中,除特别说明外,规定ElemType的默认是int型。

例子:ElemType *是定义指向这种类型的指针,p=(ElemType *)malloc(8*sizeof(ElemType)),开辟8个ElemType大小的内存空间,把地址分配给指向ElemType的指针p。

扩展资料

elem是单词element(元素)的缩写,在程序定义中代表某一不确定的类型,也就是抽象的数据类型为了使程序可读性强,并且便于修改,让elem代表多种的数据类型也就是为int、char等等的数据类型,起了一个别名在头文件中定义:typedef char elem;           

/* 抽象元素类型为char类型,这样定义之后,下面的程序中elem所定义的元素就是char类型的了 */如果需要修改其类型,直接修改char到其他类型,elem便又代表了所修改的类型数据,这也是方便性的体现。 

参考资料来源:百度百科:elemtype

本回答被网友采纳
第2个回答  推荐于2017-09-18
在学数据结构?
ElemType是抽象数据类型的定义啊
你想定义什么就定义什么了
ElemType *是定义指向这种类型的指针
p=(ElemType *)malloc(8*sizeof(ElemType))
开辟8个ElemType大小的内存空间,把地址分配给指向ElemType的指针p本回答被提问者采纳
第3个回答  2011-03-25
通俗的说,ElemType就是由之后数据决定的任意类型
第4个回答  2011-03-20
一个类型为ElemType的指针
相似回答