有没有办法复制两种不同的结构类型,具有相似的内容,而不是通过变量复制变量?
例如,读取文件,保存pessoa并复制到xpessoa假设email是'not defined'.
struct pessoa {
char nome[50];
char telefone[20];
struct{
int dia,mes,ano;
}data_nasc;
};
struct xpessoa {
char nome[50];
char telefone[20];
struct{
int dia,mes,ano;
}data_nasc;
char email[50];
};
Run Code Online (Sandbox Code Playgroud)
这是保证工作的一种方法是嵌入pessoa到xpessoa,像这样的:
struct xpessoa {
pessoa p;
char email[50];
};
Run Code Online (Sandbox Code Playgroud)
在pessoa更改布局的情况下,此方法可保护您的代码免受未定义的行为,因为xpessoa不再镜像其布局.