结构体是C语言中的一种数据类型,可以把咱们一个目标的数据装到一个变量中去
#include<stdio.h>
#include<string.h>
//这一行是类型
struct stu
{
char name[10];
int age;
double tall;
}stu1,stu2,stu3,stu4;//这一行是函数名。
int main (void)
{
struct stu stu1={"peter",18,1.7};
struct stu *p=&stu1;
printf("%s %d %.2lf",p->name,p->age,p->tall);
//通过指针赋值,字符型数据只能用strcpy函数,整形和浮点型直接在后面赋值
p->age=20;
strcpy(p->name,"资本家");
p->tall=1.8;
//考虑到优先级和结合性,这些括号不可以省略!!!
printf("\n%s %d %.2lf",(*p).name,(*p).age,(*p).tall);
return 0;
}
其实找指定元素赋值,我把他当成一个搜索,一步一步来,假如说我们想要对stu3中的name赋值(由于他是数组有点特殊),只能用strcpy,遇到整形数组的话就用memcpy(),但是假如说是一个字符或者数字,那就
stu3.age=18;可以直接在后面赋值,stu3相当于是第一层位置,age是第二个位置,一个一个位置找