elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Pequeña duda sobre palabra reservada new y espacios en memoria
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pequeña duda sobre palabra reservada new y espacios en memoria  (Leído 1,579 veces)
Beginner Web


Desconectado Desconectado

Mensajes: 634


youtu.be/0YhflLRE-DA


Ver Perfil
Pequeña duda sobre palabra reservada new y espacios en memoria
« en: 13 Septiembre 2018, 03:52 am »

Buenas a todos, queria saber mas que nada cuanta informacion en bytes puede guardar un espacio en memoria creada al usar un nuevo nodo con
Código
  1. new
, yo se que puede almacenarse un registro grandecito y bueno que pasaria si meto registros enormes mas que nada saber cuandos bytes es un espacio en memoria  :huh:


En línea

7w7
jca1

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: Pequeña duda sobre palabra reservada new y espacios en memoria
« Respuesta #1 en: 13 Septiembre 2018, 17:06 pm »

Depende de cuantos datos tenga la estructura y de que tipo. Por cada tipo ya hay un tamaño preestablecido. por ejemplo un entero ocupa en memoria 4 byte y un long int 8 byte, sin importar de cual numero sea y una cadena dependiendo de cuanto caracteres la definiste, cada caracter ocupa 1 byte. suerte!


En línea

Beginner Web


Desconectado Desconectado

Mensajes: 634


youtu.be/0YhflLRE-DA


Ver Perfil
Re: Pequeña duda sobre palabra reservada new y espacios en memoria
« Respuesta #2 en: 13 Septiembre 2018, 22:42 pm »

Si tengo esta estructura cuantos bytes seria por cada nodo?
Código
  1. const int MAX=32;
  2. typedef char tcad[MAX];
  3. typedef struct tfecha{
  4. int dia;
  5. int mes;
  6. int año;
  7. };
  8. typedef struct tdomicilio{
  9. tcad calle;
  10. int numero;
  11. tcad barrio;
  12. };
  13. typedef struct tvehiculo{
  14. tcad marca;
  15. tcad patente;
  16. };
  17. typedef struct thorario{
  18. tcad horaEntrada;
  19. tcad horaSalida;
  20. };
  21. typedef struct tchofer{
  22. int legajo;
  23. tcad nombre;
  24. tcad apellido;
  25. int DNI;
  26. tfecha fecha_nac;
  27. tdomicilio domicilio;
  28. tvehiculo coche;
  29. thorario extras;
  30. int horas_extras;
  31. };
  32. typedef struct tnodo *pnodo;
  33. typedef struct tnodo{
  34. tchofer chofer;
  35. pnodo sig;
  36. };
En línea

7w7
jca1

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: Pequeña duda sobre palabra reservada new y espacios en memoria
« Respuesta #3 en: 14 Septiembre 2018, 00:09 am »

La estructura tfecha ocuparia 3 byte, la estrucutra tcad ocupa 32byte, tdomicilio 65 byte, thorario y tvehiculo 64 byte y tchofer 263 byte
« Última modificación: 14 Septiembre 2018, 00:16 am por jca1 » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.603



Ver Perfil
Re: Pequeña duda sobre palabra reservada new y espacios en memoria
« Respuesta #4 en: 14 Septiembre 2018, 08:41 am »

Dáselo a sizeof y te lo dirá:
Código:
printf("%lu", sizeof(estructura));
Puede que te encuentres con sorpresas pues C intenta acomodar los datos de las estructuras para que al procesador le sea más fácil acceder a los miembros.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines