devc++运行正确,但是一复制到计蒜客就显示不出来,哪位朋友可以告诉一下哪里出了问题?
devc++:
计蒜客:
最后一行前面6个 %c
后面只有5个 ch
scanf多了个%c
不知道你这个问题是否已经解决, 如果还没有解决的话:问题一:typedef int SElemType;
为什么要这样定义?
定义不同的数据类型名称是为了程序的可读性。一旦你需要将类型变换比如使用double型的,只要写:
typedef double ElemType;如果没有定义的话就要一个个的把int改成double,这样操作起来会很麻烦。
问题二:#define STACKINCREMENT 10
什么意思?
#define是C语言中的一个预处理指令,其中的“#”表示这是一条预处理命令·。表示定义一个常量 STACKINCREMENT
,而且一定不要加 ;
分号,要不然程序报错。其定义的一般形式为:
#define 标识符 字符串
问题三:typedef相关的是啥?
typedef struct{ //栈结构类型定义(栈顶指针、栈低指针、栈大小)
SElemType *base;
SElemType *top;
int stacksize;
}SqStack;
typedef
是类型定义的意思。typedef struc
t 是为了使用这个结构体方便。具体区别在于:
若struct node{ }这样来定义结构体的话。在定义 node 的结构体变量时,需要这样写:struct node n;
若用typedef,可以这样写:typedef struct node{}NODE; 。在申请变量时就可以这样写:NODE n;
其实就相当于 NODE 是node 的别名。区别就在于使用时,是否可以省去struct这个关键字。