打印

C语言如何构建"人"的结构体

[复制链接]
659|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ee168|  楼主 | 2019-9-3 19:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
dirtwillfly| | 2019-9-3 21:26 | 只看该作者
方案一、把男人女人的参数都放在结构体里,根据需要来使用就可以了,用不到的就不用管。
方案二、定义一个联合体,放在结构体里一个联合体变量,男人的时候存男人的参数,女人的时候存女人的参数。

使用特权

评论回复
板凳
ee168|  楼主 | 2019-9-4 09:35 | 只看该作者
谢谢楼上的,我目前用了第一种办法,就是觉得有点浪费空间或不完美

第二种办法,我想一想怎么写

有想过用一种 void指针的方式指向不同结构,好像也不现实

使用特权

评论回复
地板
ee168|  楼主 | 2019-9-4 14:30 | 只看该作者
又琢磨了一下
struct 男人描述
{
        长短;
}
struct 女人描述
{
        三围;
}
struct 人
{
        char[8] 姓名;
        char 性别;
        char 年龄;
        男人女人描述号;
        union
        {
                男人描述指针;
                女人描述指针;
        }
}
可以不要男人女人描述号,初始化时初始每个人的男人,女人描述指针
调用时
人.男人描述指针->长短
人.女人描述指针->三围

使用特权

评论回复
5
airwill| | 2019-9-11 22:02 | 只看该作者
可以用 C++  的虚类实现

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

114

主题

200

帖子

2

粉丝