C/Visual C - Para que sirve STRUCT?

 
Vista:

Para que sirve STRUCT?

Publicado por Nicolas Eliaschev (21 intervenciones) el 09/09/2001 18:45:20
Hola, me gustaria que me digan para q sirve (no se si es una funcion) struct?
Si alguien tiene ejemplos faciles o algun tutorial q lo explica, por favor muestrenmelo, desde ya muchas gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Para que sirve STRUCT?

Publicado por Googol (255 intervenciones) el 09/09/2001 19:22:58
Sirve para definir un tipo de datos personalizado.
Imaginate que quieres hacer un programa que almacene información sobre empleados. De cada uno quieres guardar el nombre, la dirección, y el DNI. Y quieres guardar información de 100 de ellos.
Podrías tener almacenada todos esos datos en 3 arrays diferentes:

cadena nombres[100];
cadena direcciones[100];
long dni[100];

El problema es que no tienes centralizados en una sola variable todos los datos de cada empleado, si no que los tienes repartidos en 3 arrays diferentes. La otra solucion es definirte tu propio tipo de datos:
struct Empleado {
cadena nombre;
cadena direccion;
long dni;
}

y luego tener un array con 100 de esos:

Empleado datos[100];

Para acceder a cada uno usarías:

datos[0].nombre = ....
datos[0].dni = ...

O sea es semejante a una clase pero sin, en principio, métodos.

Suerte!


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para que sirve STRUCT?

Publicado por Nicolas Eliaschev (21 intervenciones) el 09/09/2001 21:10:27
Y un programa mas o menos asi, por q no me anda:
#include <conio.h>
#include <stdio.h>

void main()
{
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para que sirve STRUCT?

Publicado por Nicolas Eliaschev (21 intervenciones) el 09/09/2001 21:14:01
#include <conio.h>
#include <stdio.h>

void main()
{
int empleados [6];

clrscr();

struct empleados {
int dni[6];
int numero[6];
}


printf ("El den es: %d",empleados.dni[0]);
printf ("El num es: %d",empleados.num[0]);

getch();
}

me da muchos errores....me podrias ayudar por favor?

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Para que sirve STRUCT?

Publicado por Erick (92 intervenciones) el 10/09/2001 07:33:37
Bueno no estoy muy seguro de lo que quieres hacer pero, por lo que lei, estas aprendiendo a utiliza las estructuras, bueno tratare de hacer uno espero que te sirva

#include <stdio.h>
#include <conio.h>

struct MiEstructura
{
char nom;
char direccion;
int edad;
}MiVariable; /*hay dos formas de declarar tus variables de tipo estructura una es poniendo el nombre de las varia bles entre la llave y los dos puntos como se hace en este ejemplo*/

main()
{
MiEstructura MiVariable; /*Esta es la otra forma, pones el nombre de tu estructura que representaria al tipo de variable que es la que esta declarando y el nombre de tu variable.*/

bloque de sentencias...

}

Hahora si quieres utlilizar tu misma variable para almacenar los datos de diferrentes personas lo que tienes que hacer es declararla como un arreglo de estructutas que es de la sig. forma:

MiEstructura Mivariable[6];

y al archivar haces lo siguiente:

Si vamos a almacenar los datos de la persona numero 5(por ejemplo), lo hacemos de la siguiente forma:

scanf("%d",&Mivariable[4].edad)

/* supongo que ya sabes que al manejar matrices o arreglos se maneja n-1 es decir como la computadora comienza a reconocer desde la posicion 0 entonces si declaraste tu arreglo 6 el maximo numero sera 5 ya que comiensas a contar des de la pisicion 0,1,2,3...5 ok. espero que esto este entendido.

Si no me entendiste o tienes alguna otra duda esribeme engusto te hacare la mano, si esta en mismanos jajajaja, bueno hata pronto.

DTB.

Erick Rios
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar