作者kc655039 (NNN  )
看板ACMCLUB
标题问个简单的问题...
时间Sun Feb 20 02:20:25 2005
刚刚写了#536用了递洄,一开始也是用了全域变数,可是就是不想用全域变数,
後来想一想,用pointer就可以解决了,可是有个语法我实在搞不清楚了...
请看一下注解的地方
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
void post_order(char *s,char **middle)
{
char temp;
char *a=s;
if (*s!='\0')
{
while (*a!=(**middle))
a++;
temp=*a,*a='\0',(*middle)++;
post_order(s,middle);
post_order(a+1,middle);
cout<<temp;
}
}
main()
{
char preorder[27];
char inorder[27];
char *temp;
while (cin>>preorder>>inorder)
{
temp=preorder;
post_order(inorder,&temp);
//这个地方居然不能用
cout<<endl;
//post_order(inorder,&preorder);
}
//why?我记得preorder就是地存放位
return 0;
//位置不是,用个temp去装不也没改变
}
//什麽??十分移惑
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.161.12.54
※ 编辑: kc655039 来自: 218.161.12.54 (02/20 02:24)