学点 C 语言(24): 数据类型 - 结构(struct)(2)
int main(void)
{
struct Rec {
char name[12];
short age;
} r1 = {"ZhangSan", 12};
printf("%s, %u", r1.name, r1.age);
getchar();
return 0;
}
4. 声明变量是赋初值:
#include
int main(void)
{
struct Rec {
char name[12];
short age;
};
struct Rec r1 = {"ZhangSan", 12};
printf("%s, %u", r1.name, r1.age);
getchar();
return 0;
}
5. 声明后给字符串赋值有点麻烦:
#include
#include
int main(void)
{
struct Rec {
char name[12];
short age;
};
struct Rec r1;
strcpy(r1.name, "ZhangSan");
r1.age = 18;
printf("%s, %u", r1.name, r1.age);
getchar();
return 0;
}
6. 如果在定义时直接声明变量, 可省略结构名:
#include
int main(void)
{
struct {
char name[12];
short age;
} r1 = {"ZhangSan", 12};
printf("%s, %u", r1.name, r1.age);
getchar();
return 0;
}
7. 通过 scanf 赋值:
#include
int main(void)
{
struct Rec {
char name[12];
short age;
} r1;
printf("name: ");
scanf("%s", r1.name);
printf("age: ");
scanf("%d", &r1.age);
printf("Name: %s; Age: %d", r1.name, r1.age);
getchar(); getchar();
return 0;
}





