1.
这是比较常用到的头文件
2.
typedef struct{
SElemtype *base;
SElemtype *top
int stacksize;
}SqStack;
以上为声明一个结构体,并用SqStack作为这个结构体名,结构体即为我们自己定义的数据类型。
其中selemtype也是一个自定义的结构体名,具体代表什么还要看具体的代码。
for(p=str;*p;p++)估计是写错了
如果前面没有定义 char p;
那么这个循环语句应该写成
for(char p=str;*p;p++);
p可以在for语句中定义,但是定义的p只能作用于这条for语句之内。
1、ElemType是数据结构的书上为了说明问题而用的一个词。它是element type(“元素的类型”)的简化体。 因为数据结构是讨论抽象的数据存储和算法的,一种结构中元素的类型不一定是整型、字符型、浮点型或者用户自定义类型,为了不重复说明,使用过程中用“elemtype”代表所有可能的数据类型,简单明了的概括了整体。在算法中,除特别说明外,规定ElemType的默认是int型。
2、常用头文件:
首先要肯定要原本有的东西才能用,一般数据结构的书上的东西,都是自己编的,当然有些书是按照STL(C++标准模板库),其实数据结构中有很多C++都给了标准的模板,就是只要你包含了头文件就可以直接用的,像你上面的应该是书上自己定义的,你看程序应该整体的看,不要把一部分的拿出来,要前后联系一下。比如你说的那些Elemtype QElemtype SElemtype都是你自己定义的抽象数据类型,它可以是任何类型的,C我不太熟悉,不过有一点是可以确定的,你可以在程序的开头自己定义它:typedef char Elemtype;这样Elemtype就是char类型了,
typedef int Elemtype;这样Elemtype就是int类型了,但注意一个程序中的Elemtype只能这样定义一次。不过如果C++中的类模板,就不一样了,比如你已经定义了一个class Seqstack