C语言什么是结构体?初步学习C语言结构体三部曲
阅读须知:
结构体部分内容,涉及结构体定义,结构体变量,结构体指针,结构体数组,更多内容敬请关注。
结构体是由若干个"成员"组成的,每一个成员要有成员名称和类型,成员可以是基本数据类型或者一个结构体。一旦定义结构体类型,使用它的方式和其他类型一样,可以声明这个结构体的对象、指针和数组。下面我们先来定义一个描述歌曲的结构体:
上面的song就是一个机构体,它包含有4个成员,成员分别有不同的数据类型,通过上面的例子我们能总结出定义结构的一般格式:struct 结构体名称 {成员列表};
struct是一个C语言的关键字,是定义结构体所必须的。[结构体名称]就是上面的song,有时候可以省略。成员列表必须用花括号{}括起来,最后是分号。
想要使用结构体,就必须先声明结构体变量,如果你想说在上个练习中的song是变量的话,那你就大错特错了。song是我们定义的结构体名称,就想int一样,只不过song是我们定义的,而int是C语言定义好的。我们可以使用2种方式来声明结构体变量:
定义好结构体后再声明变量
在定义机构体时就声明变量
当我们使用这种方式声明结构体变量时,结构体名称song可以省略不写。 如果我们想使用结构体song1中的成员时:song1.title或者song1->title (->:指针只想运算符)
小编给大家推荐一个学习氛围超好的地方,C/C++交流企鹅裙:870963251!适合在校大学生,小白,想转行,想通过这个找工作的加入。裙里有大量学习资料,有大神解答交流问题,每晚都有免费的直播课程
当我们有很多个结构体变量时,我们可以使用结构体数组,比如我们有3首歌的时候:
或者
结构体指针当然我们也可以先定义结构体数组,然后再对它们进行赋值。
结构体指针顾名思义就是指向结构体的指针,具体的这个指针会指向该结构体的某个变量。声明一个结构体指针变量的形式:
struct 结构名 *结构指针变量名
比如我们声明一个指向song结构体的指针变量:
struct song *ps;struct song song1, song2;
给指针ps赋值则是:
ps = &song1;
当然我们也可以在声明指针时就给ps赋值。我们可以通过指针来使用song1中的成员:(*ps).title或者ps->title
注意
指针ps只能指向结构体变量song1或song2,但是不能指向结构体名song
使用"."和"->"时的不同方式。
结构体指针不但能指向结构体变量,还可以指向结构体数组,比如上个练习中我们使用的songs数组:ps = songs,这代表指针ps指向songs数组的首地址

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java Apache POI 操作 Excel 导出
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82655653 Java Apache POI 操作 Excel 导出 Java 可以通过 Apache POI 操作 Excel 的导入导出 Apache POI 是一套操作 Microsoft Office 套件的开源 Java API 更多精彩 更多技术博客,请移步 asing1elife’s blog JAR 包依赖及介绍 请参见 Java Apache POI 操作 Excel 导入 实现步骤 创建 Excel 实体类,用于同一接收导出数据 headers 用于存储导出数据时规定的表格头部内容 cells 是一个在 List 中嵌套 List 的结构 外层的 List 表示行数据 内层的 List 表示列数据 结合起来也就是有多少行多少列的数据 如果导出的内容存在多个 sheet ,只需要使用一个 Map ,通过 key-value 的形式包装 Excel 实体类即可 例如 Map<S...
- 下一篇
简述在C语言中, “字符”与“字符串”之间的区别
在C语言中,“字符”与“字符串”之间,是有区别的。这一篇文章中,我们将介绍一下,在C语言中的“字符”与“字符串”,它们之间的区别。 首先,一个很明显的区别是: “字符”,使用单引号作为定界符,而“字符串”,是使用双引号作为定界符。 我们可以先写一个定义“字符”的程序代码段: 上述C语言程序中,第5行,就是定义了一个“字符”变量str,定义“字符”变量的时候,使用关键字“char”,从本质上来说,关键字“char”定义的也是一个整数,这个整数在内存中占据一个字节。与ASCII码表相对应。比如常用的ASCII码表的对应关系是:数字48表示字符'0';数字65表示字符'A';数字97表示字符'a' 在定义一个“字符”的时候,定界符要写成单引号。在屏幕上打印一个字符的时候,需要在printf函数中,使用“%c”这个占位符。 小编给大家推荐一个学习氛围超好的地方,C/C++交流企鹅裙:870963251!适合在校大学生,小白,想转行,想通过这个找工作的加入。裙里有大量学习资料,有大神解答交流问题,每晚都有免费的直播课程 我们再来看一下,定义一个字符串的代码片段: 上述C语言程序中,第5行,是定义...
相关文章
文章评论
共有0条评论来说两句吧...