C语言中设计一个名为 Person 的类,该类包含姓名、年龄、性别。实现要求: 在 main函数中,创建一个 Person对象,并使用构造函数初始化其属性。最后显示这个人的信息。
时间: 2024-09-30 20:01:39 浏览: 37
在C语言中,虽然没有像面向对象语言那样内置的类概念,但我们可以通过结构体和函数来模拟这个场景。首先,我们定义一个名为`Person`的结构体,它包含了姓名、年龄和性别的字段。接着,我们会定义一个用于初始化结构体的构造函数(尽管C语言中并没有真正的构造函数,但我们可以自定义一个初始化函数)。最后,在`main`函数中创建`Person`对象并显示其信息。
```c
#include <stdio.h>
#include <string.h> // 使用字符串库
// 定义 Person 结构体
typedef struct {
char name[50];
int age;
char gender; // 假设性别只用 'M' 和 'F'
} Person;
// 自定义初始化函数,模拟构造函数
void create_person(Person* person, const char* name, int age, char gender) {
strncpy(person->name, name, sizeof(person->name) - 1); // 防止数组溢出
person->age = age;
person->gender = gender;
}
int main() {
// 创建 Person 对象
Person person;
// 使用构造函数初始化
create_person(&person, "张三", 25, 'M'); // 假设名字为张三,年龄25,性别男
// 显示个人信息
printf("Name: %s\n", person.name);
printf("Age: %d\n", person.age);
printf("Gender: %c\n", person.gender);
return 0;
}
```
在这个例子中,`create_person`函数起到了类似构造函数的作用,接收一个指向`Person`结构体的指针以及姓名、年龄和性别作为参数,然后填充结构体的内容。
阅读全文