c++里的Elem是什么类型(
c++里的Elem是什么类型? -
elem是单词element(元素)的缩写,在程序定义中代表某一不确定的类型,也就是抽象的数据类型为了使程序可读性强,并且便于修改,让elem代表多种的数据类型也就是为int、char等等的数据类型,起了一个别名在头文件中定义:typedef char elem; /* 抽象元素类型为char类型,这样定义之后,下面的程序还有呢?
ElemType :这个看英文意思就知道了, 元素类型的意思了,在这里它之所以用ElemType 是为了更抽象,更有一般意思(因为对于不同的元素,其数据类型也是不一样的)需要注意的是在实际程序中如果也是这样定义的话,在用ElemType 之前,先要使用typefef 来将ElemType 声明为需要的数据类型不用怪老师,这个老师很少说完了。
elem是单词element(元素)的缩写,在程序定义中代表某一不确定的类型,也就是抽象的数据类型为了使程序可读性强,并且便于修改,让elem代表多种的数据类型也就是为int、char等等的数据类型,起了一个别名在头文件中定义:typedef char elem; /* 抽象元素类型为char类型,这样定义之后,下面的程序还有呢?
ElemType :这个看英文意思就知道了, 元素类型的意思了,在这里它之所以用ElemType 是为了更抽象,更有一般意思(因为对于不同的元素,其数据类型也是不一样的)需要注意的是在实际程序中如果也是这样定义的话,在用ElemType 之前,先要使用typefef 来将ElemType 声明为需要的数据类型不用怪老师,这个老师很少说完了。
LocateElem是函数名称,后面的括号里面是参数,有两个参数,Sqlist是自定义的顺序表数据结构类型(参数类型),L是第一个参数变量名,ElemType是顺序表单体数据结构类型,e是第二参数变量名。
L->elem 中L必须是指针,而L.elem中的L一定是普通结构体变量->和.都是引用结构体成员的运算符,前者是通过指针引用,而后者是通过变量引用,
简单问题(C数据结构) -
L.elem是引用结构体L里的elem成员。elem就是线性表用来存放数据的数组。if(!L.elem)exit(OVERFLOW); //判断是否分配到空间L.length=0;L.listsize=LIST_INIT_SIZE;return 1;//add a return } 哎呀,手都酸了,不整了,多看看C语言吧,虽说是数据结构,其实基本都是C的内容啦^=……..
L.elem 里的L 就是形参SqList &L 里的L。SqList 型结构在函数前面已定义,它含有3个成员变量,elem 是int *elem; 也就是指向整型量的指针。所以L.elem 是指针。L.elem=(ElemType*)malloc 好了吧! 这是动态分配内存,分配后成员elem 可以当数组使用。if(!L.elem) -- 如果好了吧!
c语言链表L->elem[i-1]? -
L应该是指向Sqlist的指针,elem是个指向int的指针,elem[i-1]等价于*(elem+i-1)不涉及C++
你学的结构体吧,s是结构体指针,因此用—gt;,指向成员数组,数组下标top也是结构体成员,这个定义原型是:struct stu { int elem[10];int top;}S;就是这样。
C语言中链表与队列有什么区别? -
SQQUEUE的第一个元素elemtype *elem;其实是指向了一个数组,该数组中存储着类型为elemtype的元素,然后front和rear就标识了队首和队尾元素对应的数组下标。typedef struct _Point{int x,y;}Point;#defineelemtype Point//这个elemtype可以是任意你自己定义的结构,可以是结构体,也可以是简单数据类型elemtyp等我继续说。
前面标志ElemType类型的指针,后的是乘号。