文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
只要把“鱼”给函数就行了
现在,你只要把新的自定义数据传给函数就行了,而不必传递一大批零散的数据。
/* 打印目录项 */void catalog(struct fish f){ ...}/* 打印贴在水缸上的标签 */void label(struct fish f){ ...}
是不是简单多了?现在函数只需接收一条数据,而且调用函数的代码也更易读了:struct fish snappy = {"Snappy", "Piranha", 69, 4};catalog(snappy);label(snappy);
以上便是定义自定义数据类型的方法,但怎么才能使用它们呢?函数如何读取结构中保存的某条数据呢?
鱼的好处
把数据放在结构中传递有一个好处,就是修改结构的内容时,不必修改使用它的函数。比如要在 fish 中多加一个字段:struct fish { const char *name; const char *species; int teeth; int age;
int favorite_music;};
catalog() 和 label() 知道有人会给它们一条 fish ,但却不知道 fish 中现在有了更多的数据,它们也不关心,只要 fish 有它们需要的所有字段就行了。这就意味着,使用结构,不但代码更好读,而且能够更好地应对变化。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论