C语言-结构体进阶

结构体的声明,结构体变量的定义与初始化,结构体成员的访问

复制代码
#include<stdio.h>
//结构体
//
//结构体的声明,结构体变量的定义与初始化,结构体成员的访问
struct  Peo 
{
	char name[20];
	char tele[12];
	char sex[5];//女 男 保密
	int high;
}p3,p4;
struct Peo p5, p5;
struct St
{
	struct Peo p;
	int num;
	float f;
};
void print2(struct Peo* sp) {
	printf("%s %s %s %d\n", sp->name, sp->tele, sp->sex, sp->high);  //结构体指针->成员变量
}
void print1(struct Peo p) {
	printf("%s %s %s %d\n", p.name, p.tele, p.sex, p.high);          //结构体变量.成员变量
}

int main() {
	struct Peo p1 = {"张三","15364649771","男",197};//结构体变量的创建
	struct St s = { {"lisa","16234479467","女",184},100,3.14f };
	printf("%s %s %s %d \n", p1.name, p1.tele, p1.sex, p1.high);
	printf("%s %s %s %d %d %f \n", s.p.name, s.p.tele, s.p.sex, s.p.high,s.num,s.f);
	print1(p1);
	print2(&p1);//结构体传参时,尽量传结构体的地址(如果传对象,参数会压栈,影响性能)
	return 0;
}
相关推荐
C^h12 小时前
c++ string
开发语言·c++
听风说ml12 小时前
socket编程 【C语言】
c语言·udp·tcp·socket编程
raindayinrain12 小时前
c++高性能--原子操作,无锁编程,操作顺序
开发语言·c++·性能优化
学逆向的13 小时前
C++ 合并命名空间
开发语言·c++·网络安全
Zhao-Jichao13 小时前
VS2026 打包 C++ 程序生成 EXE,借助 Installer Project 扩展工具
开发语言·c++
学逆向的14 小时前
C 局部静态变量
c语言·开发语言·网络安全
大都督会赢的14 小时前
C++第一节课
开发语言·c++
“AI国潮设计-小江”14 小时前
【AIGC实战】Python+Stable Diffusion打造“英歌舞财神”IP,解锁“马到成功”等爆款情绪营销文案设计
开发语言·人工智能·python·prompt·aigc
小王C语言14 小时前
Qt常用控件:容器类控件,标题分组框、标签页(浏览器标签)
开发语言·qt
我是唐青枫15 小时前
Kotlin Delegation 委托详解
开发语言·kotlin