본문내용
str.*/
while (!emp(&tmp))
{
d= pop(&tmp); /* pop data from tmp */
if (!full(str))
push(d, str); /* push data on str */
} /* while(!emp(&tmp)) */
} /* FUCTION fill(stack *str, const char *str) */
/* print.c */
#include\"polish.h\"
void prn_data(data *dp)
{
switch (dp -> kind)
{
case operator: printf(\"%s%3c \\n\",
\"kind: operator op:\", dp -> u.op);
break;
case value: printf(\"%s%3d \\n\",
\"kind: value val:\", dp -> u.val);
break;
}/* switch (dp -> kind) */
}/* FUCTION prn_data(data *dp) */
void prn_stack(stack *str)
{
data d;
printf(\"stack count: %3d%s\", str -> cnt,
(str -> cny ==0 ) ? \"\\n\" : \" \");
if (!empty(str))
{
d = pop(str); /* pop the data */
prn_data(&d); /* print the data */
prn_stack(str); /* recursive call */
push(d,str); /* push the data */
}/* if */
}/* FUCTION prn_stack(stack *str) */
while (!emp(&tmp))
{
d= pop(&tmp); /* pop data from tmp */
if (!full(str))
push(d, str); /* push data on str */
} /* while(!emp(&tmp)) */
} /* FUCTION fill(stack *str, const char *str) */
/* print.c */
#include\"polish.h\"
void prn_data(data *dp)
{
switch (dp -> kind)
{
case operator: printf(\"%s%3c \\n\",
\"kind: operator op:\", dp -> u.op);
break;
case value: printf(\"%s%3d \\n\",
\"kind: value val:\", dp -> u.val);
break;
}/* switch (dp -> kind) */
}/* FUCTION prn_data(data *dp) */
void prn_stack(stack *str)
{
data d;
printf(\"stack count: %3d%s\", str -> cnt,
(str -> cny ==0 ) ? \"\\n\" : \" \");
if (!empty(str))
{
d = pop(str); /* pop the data */
prn_data(&d); /* print the data */
prn_stack(str); /* recursive call */
push(d,str); /* push the data */
}/* if */
}/* FUCTION prn_stack(stack *str) */
소개글