GNU/Linux >> Tutoriales Linux >  >> Linux

Getopt no incluido? declaración implícita de la función 'getopt'

Intenta eliminar el -std=c99 . Esto evita que las macros POSIX se definan en <features.h> , lo que evita que <unistd.h> de incluir <getopt.h> .O incluya getopt.h usted mismo.


Agregar #include <getopt.h> entre los incluidos.


Tu nube no quita -std=c99 .En su lugar, agregue #define _POSIX_C_SOURCE 2 al principio.


No hay absolutamente ninguna necesidad de cambiar el -std o para incluir getopt.h directamente.

Lo correcto si desea utilizar las características del lenguaje C99 (o cualquier otro estándar) junto con las funciones POSIX (como getopt ) es definir _POSIX_C_SOURCE a la versión correcta (por ejemplo, 200809L ) antes de incluir los respectivos encabezados. Para obtener más detalles, consulte feature_test_macros(7).


Linux
  1. administrador de suscripciones:comando no encontrado

  2. dnf:comando no encontrado

  3. rm:comando no encontrado

  4. mv:comando no encontrado

  5. ln:comando no encontrado

Funciones bash

¿Por qué Cd no es un programa?

¿A Env o no a Env?

¿Qué no poner en un Ssd?

nc:comando no encontrado

aws-shell:comando no encontrado