/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Problema con getopt

 
      Índice del Foro elrincondelc.com -> Linux
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
ZedGe



Registrado: 03 May 2011
Mensajes: 23

MensajePublicado: 04/04/2013 7:04 pm
Título: Problema con getopt

Saque este codigo de la pagina de gnu.

Código:
 # Include <ctype.h>
     # Include
     # Include <stdlib.h>
     # Include
     
     int
     main (int argc, char ** argv)
     {
       aflag int = 0;
       bFlag int = 0;
       char * cValue = NULL;
       int index;
       int c;
     
       opterr = 0;
     
       while ((c = getopt (argc, argv, "abc:"!)) = -1)
         interruptor (C)
           {
           case 'a':
             aflag = 1;
             break;
           case 'b':
             bFlag = 1;
             break;
           case 'c':
             cValue = optarg;
             break;
           case '?':
             if (optopt == 'c')
               fprintf (stderr, "La opción -% c requiere un argumento \ n"., optopt);
             else if (isprint (optopt))
               fprintf (stderr, "Opción desconocida` -% c '\ n "., optopt);
             más
               fprintf (stderr,
                        "Opción desconocida carácter '\ \ x% x'. \ N",
                        optopt);
             return 1;
           por defecto:
             abort ();
           }
     
       printf ("aflag% = d, bFlag% = d, cValue =% s \ n",
               aflag, bFlag, cValue);
     
       para (index = optind; Índice general <argc, índice + +)
         printf ("Non-opción argumento% s \ n", argv [indice]);
       return 0;
     }



El problema, es que necesito que al ingresar la bandera "- c algo"
no exista problemas por ese espacio entre el "-" y la "c", y lo tome como si escribiese "-c algo".


se puede?
Volver arriba
untio



Registrado: 17 Sep 2008
Mensajes: 380
Ubicación: MICA S.A.

MensajePublicado: 05/04/2013 8:50 am
Título:

Hola,

No soy muy experto en Linux, pero imagino que la manera natural de separar los parámetros en la consola es el espacio. Esto tanto para Linux como para Windows.

Si aún así se quieren usar parámetros que incluyen espacios se pueden poner dentro de comillas dobles o simples.

Espero que te sirva de algo.
_________________
Hago algo muy raro: primero leo las instrucciones.
Volver arriba
_Leo_



Registrado: 20 Oct 2005
Mensajes: 399
Ubicación: Buenos Aires, Argentina

MensajePublicado: 01/06/2014 5:13 pm
Título:

No. La biblioteca getopt soporta el formato guión seguido de opción. por ejemplo "-a -x" o incluso "-ax" pero el espacio entre el guión y la letra no puede estar. Lo que sí soporta es en las opciones con argumento, que el mismo tenga un espacio o no. Por ejemplo "-x ejemplo" es igual a "-xejemplo"
_________________
_Leo_
Daphne - administrador de tareas
Cine, tecnología, sociedad
Volver arriba
      Índice del Foro elrincondelc.com -> Linux
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com