C语言的定义方面的问题,求问下面程序中的主函数上面一部分是什么意思? 20
structstack{inttop;charitems[MAXCOLS];};voidpostfix(charinfix[],charpostr[]);intisope...
struct stack {
int top;
char items[MAXCOLS];
};
void postfix(char infix[], char postr[]);
int isoperand(char op); /*judge whether op is a number*/
void popandtest(struct stack *ps, char *px, int *und);
int prcd(char a, char b);
void push(struct stack *ps, char x);
char pop(struct stack* ps);
int empty(struct stack *ps);
int main() {
char infix[MAXCOLS];
char postr[MAXCOLS];
int position = 0;
while ((infix[position++] = getchar()) != '\n')
;
infix[--position] = '\0';
printf("%s%s\n", "the original infix expression is ", infix);
postfix(infix, postr);
printf("%s", postr);
system("pause");
return 0;
} 展开
int top;
char items[MAXCOLS];
};
void postfix(char infix[], char postr[]);
int isoperand(char op); /*judge whether op is a number*/
void popandtest(struct stack *ps, char *px, int *und);
int prcd(char a, char b);
void push(struct stack *ps, char x);
char pop(struct stack* ps);
int empty(struct stack *ps);
int main() {
char infix[MAXCOLS];
char postr[MAXCOLS];
int position = 0;
while ((infix[position++] = getchar()) != '\n')
;
infix[--position] = '\0';
printf("%s%s\n", "the original infix expression is ", infix);
postfix(infix, postr);
printf("%s", postr);
system("pause");
return 0;
} 展开
展开全部
struct stack {
int top;
char items[MAXCOLS];
};
这是定义结构体,就像你int i;(定义整形)一样,
void postfix(char infix[], char postr[]);
int isoperand(char op); /*judge whether op is a number*/
void popandtest(struct stack *ps, char *px, int *und);
int prcd(char a, char b);
void push(struct stack *ps, char x);
char pop(struct stack* ps);
int empty(struct stack *ps
这一些都是声明,就是你告诉main()函数,当他们碰到的时候不至于陌生,这就像你告诉你盆友你有个弟弟,但是你盆友没见过,以后你盆友来你家见到了就不会奇怪了。如果你不想要这些声明,那就把main()放到最后面去。
int top;
char items[MAXCOLS];
};
这是定义结构体,就像你int i;(定义整形)一样,
void postfix(char infix[], char postr[]);
int isoperand(char op); /*judge whether op is a number*/
void popandtest(struct stack *ps, char *px, int *und);
int prcd(char a, char b);
void push(struct stack *ps, char x);
char pop(struct stack* ps);
int empty(struct stack *ps
这一些都是声明,就是你告诉main()函数,当他们碰到的时候不至于陌生,这就像你告诉你盆友你有个弟弟,但是你盆友没见过,以后你盆友来你家见到了就不会奇怪了。如果你不想要这些声明,那就把main()放到最后面去。
追问
这就是声明这些数据的类型是吗?如果你要引用一个函数,就直接给出这个函数就好,不用提前做声明是吗?
追答
不是声明数据,是声明函数,如果你要引用一个函数,就直接给出这个函数就好?比如说你现在调用函数a(),代码是
int main()
{
a();// 1
}
a() //2
{
}
走到1的时候调用函数a(),但是他并不知道a是什么,因为还没走到2这里,你知道但是程序不知道,所以你要声明一下,让他知道a()是什么、
如果你不想声明就写成
a()
{
}
int main()
{
a();// 1
}
这样就OK了、
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询