no me quedo muy claro lo de estructuras anidadas, pero creo que te referis a lo siguiente:
Código C++:
Ver original#include <stdio.h>
struct persona{
char nombre[30];
char apellido[30];
};
struct usuario{
char nickName[30];
char password[30];
persona datos; //datos es la variable de tipo persona, donde persona es el struct declarado anteriormente
};
int main(){
usuario ejemplo;
//se completa con datos las variables dentro del struct interno
strcpy(ejemplo.
datos.
nombre, "NombreEjemplo"); strcpy(ejemplo.
datos.
apellido, "ApellidoEjemplo");
//se completa con datos las variables de tipo primitivas del struct principal
strcpy(ejemplo.
nickName, "NickNameEjemplo"); strcpy(ejemplo.
password, "PasswordEjemplo");
printf("%s", ejemplo.
datos.
nombre); printf("%s", ejemplo.
datos.
apellido); printf("%s", ejemplo.
nickName); printf("%s", ejemplo.
password);
return 0;
}
Proba ese ejemplo y analizalo para ver como funciona.
En cuanto al ejercicio que tenes que hacer, no es tan necesario usar structs anidados, se puede hacer con vectores