1. paso por valor: variables tipo estructura es idéntica a las de tipo simples;
2. paso por
dirección:
variables tipo estructura es idéntica a las de tipo simple; pero
el acceso es:
(*<variable>).campo
y no por la expresión:
<variable>.campo
(<variable> definida como: struct <nombre> <variable> )
/* Definición datos personales */
struct datos {
char nombre[10];
char
direccion[20];
int
edad;
};
/* Función que imprime datos
relacionados
con una persona */
void imprime(persona )
struct datos persona;
{
printf(''Nombre: %s
\n'',persona.nombre);
printf(''Dirección: %s
\n'',persona.direccion);
printf(''Edad: %d \n'',persona.edad);
}
/* Función quecaptura los datos relacionados con una persona y los almacena en la variable pasada como parámetro */
void captura(p)
struct datos *p;
{
printf("De el nombre: ");
scanf("%s",(*p).nombre);
printf("De la direccin: ");
scanf("%s",(*p).direccion);
printf("De la edad: ");
scanf("%d",(*p).edad);
}
main()
{
struct datos
pers;
captura(&pers);
imprime(pers);
}
Ejercicio estructura y paso
parámetros
|
|
|