Preguntas etiquetadas con gcc

GCC es la colección del compilador GNU. Es el compilador estándar de facto para C, C ++, Go, Fortran y Ada en Linux y también es compatible con muchos otros lenguajes y plataformas. Además del compilador, GCC tiene una cadena de herramientas (libc, libstdc ++, objdump, nm, etc.) que se utilizan ampliamente en varias plataformas y sistemas.

5
¿El __attribute __ ((empaquetado)) / #pragma pack de gcc no es seguro?
En C, el compilador presentará los miembros de una estructura en el orden en que se declaran, con posibles bytes de relleno insertados entre los miembros, o después del último miembro, para garantizar que cada miembro esté alineado correctamente. gcc proporciona una extensión de lenguaje __attribute__((packed)), que le dice al …
164 c  gcc  pragma-pack 

5
¿Por qué este bucle produce "advertencia: la iteración 3u invoca un comportamiento indefinido" y genera más de 4 líneas?
Compilando esto: #include <iostream> int main() { for (int i = 0; i < 4; ++i) std::cout << i*1000000000 << std::endl; } y gccproduce la siguiente advertencia: warning: iteration 3u invokes undefined behavior [-Waggressive-loop-optimizations] std::cout << i*1000000000 << std::endl; ^ Entiendo que hay un desbordamiento de entero con signo. Lo …



3
LD_LIBRARY_PATH vs LIBRARY_PATH
Estoy construyendo un programa C ++ simple y quiero sustituir temporalmente una biblioteca compartida suministrada por el sistema con una versión más reciente del mismo, para desarrollo y pruebas. Intenté configurar la variable LD_LIBRARY_PATH pero el enlazador (ld) falló con: / usr / bin / ld: no se puede encontrar …
159 gcc  g++  ld 

3
la declaración de función no es un prototipo
Tengo una biblioteca que creé, mylib.c: #include <mylib.h> int testlib() { printf("Hello world\n"); return (0); } mylib.h: #include <stdio.h> extern int testlib(); En mi programa, intenté llamar a esta función de biblioteca: myprogram.c: #include <mylib.h> int main (int argc, char *argv[]) { testlib(); return (0); } Cuando intento compilar este …
158 c  gcc 


24
Indicadores útiles de GCC para C
Más allá de la configuración -Wally la configuración -std=XXX, ¿qué otros indicadores de compilación realmente útiles, pero menos conocidos, existen para usar en C? Estoy particularmente interesado en cualquier advertencia adicional, y / o convertir las advertencias en errores en algunos casos para minimizar absolutamente cualquier desajuste de tipo accidental.
157 c  gcc  compiler-flags 






6
¿Cuál es la ventaja de __builtin_expect de GCC en las declaraciones if else?
Me encontré con una #defineen la que usan __builtin_expect. La documentación dice: Función incorporada: long __builtin_expect (long exp, long c) Puede usar __builtin_expectpara proporcionar al compilador información de predicción de rama. En general, debe preferir usar comentarios de perfil reales para esto ( -fprofile-arcs), ya que los programadores son notoriamente …
144 c  linux  gcc  built-in 


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.