c语言结构体1之定义

时间:2023-03-08 17:46:20

这是在复习阶段随便小结的一些东西 别喷哦

结构体定义的三种方式

注意事项:

1结构体括号后面有分号

2#define得放在程序上面

3成员名可以和结构体名相同

4结构体类型不能直接访问成员,也不能赋值,必须先实例化,创建的时候才会分配内存

5struct 关键字不能省略 结构体的定义必须放在main函数的上面

 //结构体的第一种方式
//struct dangdang
//{
// char email[30];
// char name[30];
// char addr[100];
// int num;
// int bugnum;
// char tel[20];
// char phone[20];
// double RMB;
//};
//
//struct dangdang d1,d2,d3; //结构体的第二种方式
//#define DD struct dangdang
//DD
//{
// char email[30];
// char name[30];
// char addr[100];
// int num;
// int bugnum;
// char tel[20];
// char phone[20];
// double RMB;
//};
//DD d1,d2,d3; //第三种方式
struct dangdang
{
char email[];
char name[];
char addr[];
int num;
int bugnum;
char tel[];
char phone[];
double RMB;
int dangdang;//成员名可以和类名同名
}d1,d2,d3;
//当当是类型 不分配内存
void main2()
{
d1.num;//结构体变量已经实例化
//结构体类型 不能访问成员 不能被赋值
}