c - 如何漂亮地打印嵌套链表
问题描述
有一个这样的结构:
struct a{
char name[10];
struct a* child;
struct a* friend;
};
并且有许多具有这种结构的对象,它们以孩子和朋友的形式联系在一起
所以如果我知道第一个地址,我可以访问所有这些
第一个对象是这样的:
struct a start;
我将在这些对象生成后立即设置它们中的所有值
因此,如果他们没有孩子或朋友,他们的孩子和朋友的成员变量将为零
我想像这样打印所有这些对象:
a
└ aa
└ aaa
│ └ aaaa
ab
ac
└ aca
acb
acc
我真的很抱歉这幅糟糕的图画
a
和的名字也是和start
的孩子aa
的名字start
,是的朋友。像这样的东西。ab
ac
aa
我知道如何打印那些特殊字符
问题是对象是在运行时确定的
所以我需要一个算法来打印这样的:
void print(struct a* b)
{
if(b)
{
printf(”%s\n”, b->name);
print(b->child);
print(b->friend);
}
}
但这远不是我想要的
我真的不知道该怎么做
可能吗?如果不是,我想获得一些关于如何漂亮地打印这种结构的帮助
解决方案
推荐阅读
- python-3.x - 用 Python 编写装饰器函数
- mysql - 如何获取过去 12 个月的每个月的计数
- node.js - 基于 GraphQL 方案的权限
- c++ - C++向量的唯一指针练习
- sql - 如果字符串包含来自另一列的任何值,则返回该值 - SQL Informix
- python - PyCharm 中带有 .pyi 文件的类型注释不适用于动态属性
- django - 在 Github 的 django 和 postgres 中集成 travis ci 时出错
- python - 在 python 2 中收听广播作品,但在 python 3 中没有
- reactjs - React 无法解析相对路径
- javascript - Google API - replaceText - 长时间延迟