结构体

2021/5/5 18:25:19

本文主要是介绍结构体,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

#include <stdio.h>
//struct Stu
//{
//	int a;
//	char c;
//	char arr[20];
//	double d;
//};
//struct D
//{
//	char ch[10];
//	struct Stu s;
//	char* pc;
//};
//int main()
//{
//	char arr[10] = "hello";
//	struct D d = { "tian",{21,'a',"15582151648",3.14},arr };
//	printf("%s\n", d.ch);
//	printf("%d\n", d.s.a);
//	printf("%c\n", d.s.c);
//	printf("%s\n", d.s.arr);
//	printf("%lf\n", d.s.d);
//	printf("%s\n", d.pc);
//	printf("%p\n", d.pc);
//}
#include <stdio.h>
typedef struct Stu
{
	int age;
	char tele[20];
	char name[20];
	char sex[5];
};
void print(Stu tmp)
{
	printf("age:%d\n", tmp.age);
	printf("tele:%s\n", tmp.tele);
	printf("name:%s\n", tmp.name);
	printf("sex:%s\n", tmp.sex);
}
void print1(Stu* ps)
{
	printf("%d\n", ps->age);
	printf("%s\n", ps->tele);
	printf("%s\n", ps->name);
	printf("%s\n", ps->sex);
}
int main()
{
	Stu s = { 21,"15582151648","雄","男" };
	print(s);
	print1(&s);
	return 0;
}

结构体传参,要传结构体的地址,函数传参是需要压栈的,如果传结构体,结构体过大,系统开销大。

结构体传参传地址,可以用p->成员变量打印出相关信息。

typedef给类型重新起个名字,放在结构体声明前相当于把结构体类型重命名。



这篇关于结构体的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程