作者热门文章
- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章C语言入门篇--初识结构体由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
(1)之前int、char等类型描述的结构体非常单一,只可描述一种类型。 (2)数组也是描述同一类型的集合,只可描述一种类型。 (3)而结构体使得C语言可以描述复杂类型,比如学生类型( 包含学生的名字、年龄、性别、电话号等信息).
结构体和数组的区别: 结构体:用来描述相同/不同数据元素类型的集合。 数组:用来描述具有相同数据元素类型的集合.
。
格式:
struct Stu//结构体类型名字为struct Stu(struct Stu类似于int){ //结构体内容 char Name[20]; int Age; char Sex[5]; char Tel[12];};//记着加;
注意: (1)结构体类型的定义是在main函数外部。 (2)此处指定义了一个结构体类型,还未定义对应结构类型的变量,所以还未在内存中开辟空间.
struct Stu Tom = { “Tom”, 13, “男”, “11122546698” }; //定义结构体普通变量并初始化,变量名为Tom,用变量名访问结构体.
#include <stdio.h>struct Stu{ char Name[20];//名字 int Age; //年龄 char Sex[5];//性别 char Tel[12];//电话号};int main(){ struct Stu Tom = { "Tom", 13, "男", "11122546698" }; printf("%s,%d,%s,%s\n", Tom.Name, Tom.Age, Tom.Sex, Tom.Tel);//用变量名和结构成员运算符(.)访问结构体。 return 0;}
struct Stu *s = &Tom; //定义结构体指针变量,s指向Tom,有如下两种访问方式.
#include <stdio.h>struct Stu{ char Name[20];//名字 int Age; //年龄 char Sex[5];//性别 char Tel[12];//电话号};int main(){ struct Stu Tom = { "Tom", 13, "男", "11122546698" }; struct Stu *s = &Tom; //用结构体指针运算符->访问(常用访问方式) printf("%s,%d,%s,%s\n", s->Name, s->Age, s->Sex, s->Tel); //s为指针变量,*s对指针解引用,代表指针所指向的内容。 //而且用指针和结构成员运算符(.)访问结构体时,由于结构成员运算符(.)比指针引用运算符(*)的优先级高,必须代括号。 printf("%s,%d,%s,%s\n", (*s).Name, (*s).Age, (*s).Sex, (*s).Tel); return 0;}
以上就是C语言入门篇--理解结构体的详细内容,更多关于C语言结构体的资料请关注我其它相关文章! 。
原文链接:https://blog.csdn.net/m0_46630468/article/details/119779164 。
最后此篇关于C语言入门篇--初识结构体的文章就讲到这里了,如果你想了解更多关于C语言入门篇--初识结构体的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我是一名优秀的程序员,十分优秀!