这段代码是通过结构体内部的函数为结构体的成员变量赋值,并通过内部函数输出内部成员的值。
首先,需要把文件的后缀名改成cpp,后缀名是c的文件,编译器会报错。
#include<stdio.h>
#include<string.h>
struct Student
{
char name[10];
int age;
void get(char *s,int a)
{
strcpy(this->name,s);
this->age = a;
}
void print()
{
printf("%s:%d\n",name,age);
}
};
int main()
{
struct Student s[3];
int i, age;
char name[10];
for (i = 0; i < 3; ++i)
{
scanf("%s %d", name, &age);
s[i].get(name, age);
}
printf("Student's infomation:\n");
for (i = 0; i < 3; ++i)
s[i].print();
}