| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 317 人关注过本帖
标题:栈·请问这个C语言代码中,主函数里Push()应该怎么修改?出错在哪里?非常 ...
只看楼主 加入收藏
焺平
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-4-15
结帖率:0
  已结贴   问题点数:20  回复次数:1   
栈·请问这个C语言代码中,主函数里Push()应该怎么修改?出错在哪里?非常感谢
typedef char DElemtype;
typedef struct StackNode
{
DElemtype data;
struct StackNode *next;

}StackNode,*LinkStack;

typedef struct Stack
{
LinkStack top;
int count;

}Stack;

int Push(Stack *s,DElemtype d)
{
LinkStack e=(LinkStack)malloc(sizeof(StackNode));
e->data=d;
e->next=s->top;
s->top=e;
s->count++;
return 1;

}

int mian(){
Stack *s;
DElemtype ch[100];

printf("请输入带有括号的表达式:");
scanf("%s",ch);
char *p=ch;

while(*p)
{
switch(*p){
case '(':
Push(&s,ch);

break;   
}}}


警告信息:    [Warning] passing argument 1 of 'Push' from incompatible pointer type
            [Warning] passing argument 2 of 'Push' makes integer from pointer without a cast
2018-04-15 14:22
yuandefeng
Rank: 4
等 级:业余侠客
威 望:3
帖 子:51
专家分:216
注 册:2017-11-28
  得分:20 
s本来就是指针,再加个&成指针的地址了。
2018-04-15 20:22







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.029740 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved