C 语言的结构体要怎么写 结构体里面有那些东西 谢谢 举实例 谢谢大家了
发布网友
发布时间:2022-05-01 22:32
我来回答
共3个回答
热心网友
时间:2023-10-06 04:23
struct 自定义结构体名
{
};(记得加分号)
然后就用自定义结构体名去定义是这个结构体的你所需的变量。
比如student结构体类型
#include <stdio.h>
struct student
{
int num;
char *sex;
};
void main()
{
student x;
x.num=2008;
x.sex="男";
printf("%d\n",x.num);
printf("%s\n",x.sex);
}
student是自定义结构体名字,x是用自定义结构体去定义的变量名字。
还有一种无名结构体就只是把自定义结构体名字去掉,不过只能在定义这种结构体的时候用一次,比如上面那个
struct
{
int num;
char *sex;
}x;//这里定义了一个x的结构体变量 。他的类型是无名的,但是有具体的类型,就是大括号里面的东西,由于无名,所以不能在使用第二次了。
热心网友
时间:2023-10-06 04:23
struct 结构体名
{
数据成员属性列表;
函数成员列表;//可以没有
};
定义的时候
struct 结构体名 结构体变量名;
struct node
{
int max;
int data[10];
};
结构体普通变量的定义与访问:
struct node a;//c++中,直接 node a;
不要想复杂了,你就把它当做定义变量就行了
调用时,结构体变量名.成员数据名=...;
或者,结构体变量名.成员函数名=...;
结构体指针变量的定义与访问:
struct node *P;//c++中,直接 node *P;
调用时,结构体变量名->成员数据名=...;
或者,结构体变量名->成员函数名=...;
在函数外声明就是全局的,在函数内声明就和普通变量一样局部的
实例
struct node
{
int num;
sum;
};
main()
{
int n,i;
cin>>n;
struct node P;
for(i=0;i<n;i++)
{
cin>>P.num;
P.sum=P.num;
cout<<P.sum;
}
struct node *Q=(struct node*)malloc(sizeof(struct node));
for(i=0;i<n;i++)
{
cin>>Q->num;
Q->sum=Q->num;
cout<<Q.sum;
}
}
热心网友
时间:2023-10-06 04:24
这种形式的定义的一般形式为
struct 结构体名
{
成员表列
}变量名表列;
例如:
struct Student//声明结构体类型Student
{ int num;
char name[20];
char sex; int age;
float score;
char addr[30];
}student1,student2;//定义两个结构体类型Student的变量student1,student2
参考资料:http://ke.baidu.com/view/4291813.htm