Estructuras estaticas, dentro de estructuras estaticas

6 views
Skip to first unread message

Octavio Razo

unread,
Jul 6, 2014, 6:42:34 PM7/6/14
to linux...@googlegroups.com


Buenas tardes, tengo un problema, quiero implementar una estructura dentro de otra estructura en C, pero que las dos sean estaticas, quiero tener unas tablas dentro de otras tablas.

struct TMS{
  unsigned int marco;
  unsigned int page;
  char *process;
  struct TMP *tmp;
}TMS;

struct TMP{
  unsigned int MS;
  unsigned int P;
  unsigned int MR;
}TMP;

No se como hacer referencia, llenar y llamar, a la "TMP" dentro de la "tms", cuando lo intento, me a mandado segmentation defaul, y llevo todo el fin de semana, creo que ya me trabe y ya no hay neuronas por un rato, Por eso acudo al foro para ver quien me puede dar una idea

Donald Carr

unread,
Jul 6, 2014, 10:54:10 PM7/6/14
to linux...@googlegroups.com
Un ejemplo abajo:


#include <stdio.h>
#include <stdlib.h>

typedef struct {
unsigned int MS;
unsigned int P;
unsigned int MR;
}TMP;

typedef struct {
unsigned int marco;
unsigned int page;
char *process;
TMP *tmp;
}TMS;

int main(int argc, char *argv[])
{
TMS mi_tms;

mi_tms.marco = 0;
mi_tms.page = 0;
mi_tms.process = "prueba";
mi_tms.tmp = (TMP *) malloc(sizeof(TMP));
mi_tms.tmp->MS = 0;
mi_tms.tmp->P = 0;
mi_tms.tmp->MR = 0;

// . . . . .
> --
> Has recibido este mensaje porque estás suscrito al grupo "LinuxCabal" de
> Grupos de Google.
> Para anular la suscripción a este grupo y dejar de recibir sus mensajes,
> envía un correo electrónico a linuxcabal+...@googlegroups.com.
> Para publicar en este grupo, envía un correo electrónico a
> linux...@googlegroups.com.
> Para ver esta conversación en el sitio web, visita
> https://groups.google.com/d/msgid/linuxcabal/78f19b85-a7ab-463a-8476-dcf990dd05ec%40googlegroups.com.
> Para acceder a más opciones, visita https://groups.google.com/d/optout.



--
Don W. Carr
6201 Windhaven Pkwy, Apt. 3223
Plano, Texas, 75093
Mobile: +1-719-424-8504

Ismael Farfán

unread,
Jul 7, 2014, 10:29:52 AM7/7/14
to linux...@googlegroups.com
>> de otra estructura en C, pero que las dos sean estaticas, quiero tener unas

A qué te refieres conque ambas sean estáticas?
Para eso basta con anteponer la palabra "static" dentro de la función.

int cosa(){
static TMP tmp;
static TMS tms;
tms.tmp = &tmp;
tms,tmp->P = 8;
}


--
Do not let me induce you to satisfy my curiosity, from an expectation,
that I shall gratify yours. What I may judge proper to conceal, does
not concern myself alone.
Reply all
Reply to author
Forward
0 new messages