一个名为CPerson的类有以下属性:姓名、身份证号、性别和年龄,请用C++语言定义这个类,并为属性定义相应的方法
时间: 2023-06-11 10:10:34 浏览: 81
以下是用 C 语言定义的 CPerson 类及其属性和方法:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义 CPerson 类
typedef struct {
char *name; // 姓名
char *id; // 身份证号
char *sex; // 性别
int age; // 年龄
} CPerson;
// 初始化 CPerson 对象
CPerson *create_person(char *name, char *id, char *sex, int age) {
CPerson *person = (CPerson *)malloc(sizeof(CPerson));
person->name = (char *)malloc(strlen(name) + 1);
strcpy(person->name, name);
person->id = (char *)malloc(strlen(id) + 1);
strcpy(person->id, id);
person->sex = (char *)malloc(strlen(sex) + 1);
strcpy(person->sex, sex);
person->age = age;
return person;
}
// 获取姓名
char *get_name(CPerson *person) {
return person->name;
}
// 获取身份证号
char *get_id(CPerson *person) {
return person->id;
}
// 获取性别
char *get_sex(CPerson *person) {
return person->sex;
}
// 获取年龄
int get_age(CPerson *person) {
return person->age;
}
// 销毁 CPerson 对象
void destroy_person(CPerson *person) {
free(person->name);
free(person->id);
free(person->sex);
free(person);
}
int main() {
// 创建 CPerson 对象
CPerson *person = create_person("张三", "123456789012345678", "男", 20);
// 获取属性值并输出
printf("姓名:%s\n", get_name(person));
printf("身份证号:%s\n", get_id(person));
printf("性别:%s\n", get_sex(person));
printf("年龄:%d\n", get_age(person));
// 销毁 CPerson 对象
destroy_person(person);
return 0;
}
```