C语言中结构体(初识)

结构体是 C 语言中特别重要的知识点,结构体使得 C 语言有能力描述复杂类型。
比如描述学生,学生包含: 名字 + 年龄 + 性别 + 学号 这几项信息。
  

 这里只能使用结构体来描述了。 例如:

struct Stu
{
    char name [ 20 ]; // 名字
    int age ;       // 年龄
    char sex [ 5 ];   // 性别
    char id [ 15 ] // 学号
};

结构体的初始化:  

// 打印结构体信息
struct Stu s = { " 张三 " 20 " " "20180101" };
//. 为结构成员访问操作符
printf ( "name = %s age = %d sex = %s id = %s\n" , s . name , s . age , s . sex , s . id );
//-> 操作符
struct Stu * ps = & s ;
printf ( "name = %s age = %d sex = %s id = %s\n" , ps -> name , ps -> age , ps -> sex , ps -> id );

 

#include<stdio.h>
//结构体可以让C语言创建新的类型出来
//创建一个学生
struct Stu
{
	char name[20]; //成员变量
	int age;
	double score;
};
//创建一个书的类型
struct Book
{
	char name[20];
	float price;
	char id[30];
};

int main()
{
	struct Stu s={"张三",20,85.5};//结构体的创建和初始化
	printf("1:%s %d %lf\n", s.name, s.age, s.score);//.点操作符- 找到这个结构体的成员,访问这个成员  结构体变量(s).成员变量
	struct Stu* ps = &s;  //ps解&,就是*ps, *ps=s  ;结构性类型的指针 ps;*ps是解引用操作  *ps就是s  !!!!!!   
	printf("2:%s %d %lf\n", (*ps).name, (*ps).age, (*ps).score);
	printf("3:%s %d %lf\n", ps->name, ps->age, ps->score); //结构体指针(ps)->成员变量名
	return 0;
}

运行结果:

 

 指针补充:


 数据类型*  [指针变量] :存取一个整型的地址

&[变量名]:取该变量的地址

*[指针变量名]:通过地址找到某个地址中存储的数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小凡同学zero

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值