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;
}
展开
 我来答
天下第一帅123
2015-05-09 · 超过26用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:32.7万
展开全部
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()放到最后面去。
追问
这就是声明这些数据的类型是吗?如果你要引用一个函数,就直接给出这个函数就好,不用提前做声明是吗?
追答
不是声明数据,是声明函数,如果你要引用一个函数,就直接给出这个函数就好?比如说你现在调用函数a(),代码是

int main()
{
a();// 1
}
a() //2
{

}
走到1的时候调用函数a(),但是他并不知道a是什么,因为还没走到2这里,你知道但是程序不知道,所以你要声明一下,让他知道a()是什么、

如果你不想声明就写成
a()
{
}

int main()
{
a();// 1
}
这样就OK了、
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式