• Martes 12 de Noviembre de 2024, 21:21

Autor Tema:  Problema Con "const Struct Option Long_options[]"  (Leído 1781 veces)

ferf

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Problema Con "const Struct Option Long_options[]"
« en: Viernes 9 de Enero de 2004, 09:54 »
0
Hola, un saludo para todos, mi problema es el siguiente: tengo que controlar los argumentos de entrada de un programa en Unix, lo estoy haciendo con getopt_long y al definir la estructura para los nombres de las opciones long_options me da unos errores de compilación que no se solucionar. He buscado información relativa a esta funcion y me dice que tengo que declarar una estructura de este tipo

const struct option long_options[] = {
{ “help”, 0, NULL, ‘h’ },
{ “output”, 1, NULL, ‘o’ },
{ “verbose”, 0, NULL, ‘v’ },
{ NULL, 0, NULL, 0 }
};

pero lo intento compilar y me falla. Que puede ser??
Un saludo y gracias!

mabrev

  • Miembro MUY activo
  • ***
  • Mensajes: 126
    • Ver Perfil
Re: Problema Con "const Struct Option Long_options[]"
« Respuesta #1 en: Viernes 9 de Enero de 2004, 11:02 »
0
Hola:

  Sería de gran ayuda el mensaje de error del compilador, más que nada por tener una orientación.

Saludos.

ferf

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Problema Con "const Struct Option Long_options[]"
« Respuesta #2 en: Viernes 9 de Enero de 2004, 11:20 »
0
Aqui los tienes:

arg.cpp: In function `int main(int, char **)':
arg.cpp:26: elements of array `const struct option long_options[]' have incomplete type
arg.cpp:37: uninitialized const `long_options'
arg.cpp:37: array size missing in `long_options'
arg.cpp:37: storage size of `long_options' isn't known
arg.cpp:42: confused by earlier errors, bailing out


Un Saludo!!

mabrev

  • Miembro MUY activo
  • ***
  • Mensajes: 126
    • Ver Perfil
Re: Problema Con "const Struct Option Long_options[]"
« Respuesta #3 en: Viernes 9 de Enero de 2004, 13:00 »
0
Hola:

  Has probado a cambiar el array sin límites por un puntero, es decir, en vez de utilizar [] en la línea:
const struct option long_options[] =
puede hacerse:
const struct option *long_options =
a ver si así se elimina algún error.

Espero que te sirva de ayuda.

Saludos

chuidiang

  • Miembro MUY activo
  • ***
  • Mensajes: 123
  • Nacionalidad: es
    • Ver Perfil
    • http://www.chuidiang.com
Re: Problema Con "const Struct Option Long_options[]"
« Respuesta #4 en: Lunes 12 de Enero de 2004, 09:55 »
0
A mi este mini-programa en C++ me compila bien

Código: Text
  1. struct option
  2. {
  3.    char *kk;
  4.    int a;
  5. };
  6.  
  7. main()
  8. {
  9.    const struct option cosa [] = {
  10.       {"help", 0},
  11.       {"output", 1} };
  12. }
  13.  

Lo único que se me ocurre es que revises un poco el código. Puedes partir de un ejemplo simple como este, ver si te compila, e ir modificandolo pcco a poco hasta convertirlo en tu codigo, para ver exactamente dónde está el fallo.

Se bueno.

ferf

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Problema Con "const Struct Option Long_options[]"
« Respuesta #5 en: Lunes 12 de Enero de 2004, 10:36 »
0
Gracias a los 2 por vuestra ayuda, la verdad es que mi código estaba bien, lo que pasa es que estaba compilando en una máquina SOLARIS y no tenia instalada esta librería. Podía haberme pegado toda la vida probando y probando y no me hubiera funcionado.

La solución ha sido tan facil como copiarme la librería a mi directorio y punto.
Un saludo a ambos!!