C语言怎么定义一个结构体
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,本篇文章给大家分享的是有关C语言怎么定义一个结构体,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。首先先思考一个问题,假设某一天你去了一家
千家信息网最后更新 2024年11月22日C语言怎么定义一个结构体
首先先思考一个问题,假设某一天你去了一家策划公司,接到了一个策划需求,比如为新上市的某款手机写一个市场推广的文案,并且在电脑上面打印出来。那么在写这个文案的时候,你肯定是会需要着重地去介绍这款手机的一些信息的,比如:手机品牌:pear,型号:13mini,机身长度:150.9mm,机身宽度:75.7mm,机身厚度:8.3mm,屏幕尺寸6.1英寸,定价5899.00等等这系列信息。要实现这一个程序非常简单,只需要去将这些变量定义好,定义完成之后再去打印在电脑屏幕上即可,如图1所示。 图1 定义变量去描述手机参数 这个程序非常简单就能实现了,也非常顺利就可以打印出手机主要的介绍信息。那么第二个问题来了,假设这家公司现在也学会了营销,一次发布会会发布多款手机,这些手机分别被命名为13mini,13,13Max,13 MaxPlus,并且在一张海报上将这些手机所有维度的参数信息打印出来,就如图1一样,那么此时该如何处理呢? 最简单的办法就是分别给每个手机的手机品牌,型号,机身长度,机身宽度,机身厚度,屏幕尺寸,定价等等这系列信息定义一个变量,如型号这个信息,Pear 13可以定义为Pear13_model,Pear13 mini可以定义为Pear13Mini_model,以此类推。试想一下,每个手机我们所展现出来的信息有7个,那么4个配置的手机一共要定义28个不同的变量。这么多的变量对于程序设计来说是不友好的,因为太多的独立的变量会让程序看上去非常杂乱,甚至编程者自己到最后都搞不清楚这些变量的意思了。 我们再仔细观察这些变量,其实每一个手机的变量都是固定的,就是手机品牌,型号,机身长度,机身宽度,机身厚度,屏幕尺寸,定价这七个维度的信息。那么我们是否可以将这七个信息组合成一个集合,每次增加描述新手机变量的时候,我们只需要增加一个集合,就可以同时将这七个维度的信息全都描述出来? 这种想法显然是合理的,在C语言中,这种由多个基本变量组成的集合式的复合变量叫做结构体。当然这个定义还需要再补充一点,一个结构体也可以包含另一个结构体。 结构体在C语言中使用关键词"struct"进行定义,其定义方式有两种。 第一种方式是在定义结构体类型的时候同时定义结构体变量,其形式为: struct 结构体标签 { 数据类型 成员变量名; 数据类型 成员变量名 …… } 结构体变量名; 第二种方式是先定义结构体类型,再定义结构体变量,其形式为: struct struct 结构体标签 { 数据类型 成员变量名; 数据类型 成员变量名 …… };//定义结构体类型 struct 结构体标签 结构体变量1, 结构体变量2……; 当使用第一种方式时,结构体标签可以省略。 很多读者在第一次接触结构体的时候,可能经常会搞不明白这里的结构体标签,结构体变量名,结构体成员之间是什么关系。我们可以举一个很形象的例子来解释一下。人的思维具有一个很强大的功能,这就是概括性或者说是归一性,表现出一点就是每个人都非常善于找规律从而对一些客观事物的特点进行总结。比如当你描述小丽外表的时候,你会说"她有着大大的眼睛,乌溜溜的眼珠,亚麻色的长发,月光般白皙的皮肤,高挺的鼻梁,樱桃小嘴"等,其实你以这种方式描述的时候,就已经将一个人眼睛,眼珠,头发,皮肤,鼻梁,嘴巴等几个方面的信息抽象出来了,而每个人都有这些信息,这里的这些信息在结构体中就相当于它的成员变量。而这些信息都是包含在"人"这个标签中的,因此"人"这个标签就类似于结构体中的结构体标签。最后你描述的对象小丽,在这里就类似于具体的结构体变量名,当然你可以用同样的信息去描述另一个人,比如小月。 言归正传,如何用结构体变量来实现上述手机信息的描述呢?首先,我们先定义一个结构体标签,接着用这个标签去定义四个具体手机的描述信息。这个结构体标签里面应该包含手机品牌,型号,机身长度,机身宽度,机身厚度,屏幕尺寸,定价这七个成员变量。 这个结构体标签可以写成: 接着,使用这个结构体标签分别去定义4个具体手机的描述信息,即定义四个结构体变量。 这些结构体变量定义好了之后,我们就可以像使用普通变量一样去使用他们了。使用的时候使用小数点"."去获取每个结构体变量中的成员变量,如要对Pear13MiniInfo中的brand变量赋值时,只需要使用Pear13MiniInfo. brand="Pear"即可。因此上述的程序可以写成如图2所示。
本篇文章给大家分享的是有关C语言怎么定义一个结构体,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
struct Mobilephone { char *brand; char *model; float length; float width; float thickness; float screen_size; float price ; };
Mobilephone Pear13MiniInfo, Pear13Info, Pear13MaxInfo,Pear13MaxPlusInfo;
以上就是C语言怎么定义一个结构体,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
结构
变量
信息
手机
标签
机身
成员
时候
类型
型号
就是
屏幕
方式
程序
语言
厚度
品牌
宽度
尺寸
手机品牌
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
批量导出数据库中图片
软件开发费用核定
网吧管理服务器
本科非软件开发专业
数据库日志插件
盐城软件开发咨询热线
通信技术和网络技术的挑战
c4网络技术挑战历年作品
数据库中籍贯一般多长
LPL视频软件开发
游戏服务器运维
上海数据库开发工程师
监控存储服务器硬盘更换
软件开发的市场推广策略
90后网络安全守护者
数据库横向表查询
wind数据库是谁开发的
美国国家网络安全部队
软件开发中人员利用率
互联网络科技
观护苗网络安全课150字
软件开发 提成
英特尔服务器固态硬盘工具
电脑上用什么软件开发票
万方数据库的特点
迈鼠互联网科技福建有限公司
红外线和射频是无线网络技术吗
浦东新区优势软件开发模板规格
计算机网络技术湖北专升本
宝可梦服务器招管理员