Questions marquées «gcc»

GCC est la collection de compilateurs GNU. C'est le compilateur standard de facto pour C, C ++, Go, Fortran et Ada sur Linux et prend également en charge de nombreux autres langages et plates-formes. Outre le compilateur, GCC dispose d'une chaîne d'outils (libc, libstdc ++, objdump, nm, etc.) qui sont largement utilisées sur plusieurs plates-formes et systèmes.

5
Le __attribute __ ((compressé)) / #pragma pack de gcc est-il dangereux?
En C, le compilateur disposera les membres d'une structure dans l'ordre dans lequel ils sont déclarés, avec d'éventuels octets de remplissage insérés entre les membres, ou après le dernier membre, pour s'assurer que chaque membre est correctement aligné. gcc fournit une extension de langage __attribute__((packed)), qui indique au compilateur de …
164 c  gcc  pragma-pack 

5
Pourquoi cette boucle produit-elle «avertissement: l'itération 3u appelle un comportement indéfini» et produit plus de 4 lignes?
Compiler ceci: #include <iostream> int main() { for (int i = 0; i < 4; ++i) std::cout << i*1000000000 << std::endl; } et gccproduit l'avertissement suivant: warning: iteration 3u invokes undefined behavior [-Waggressive-loop-optimizations] std::cout << i*1000000000 << std::endl; ^ Je comprends qu'il y a un débordement d'entier signé. Ce que …



3
LD_LIBRARY_PATH et LIBRARY_PATH
Je construis un programme C ++ simple et je souhaite remplacer temporairement une bibliothèque partagée fournie par le système par une version plus récente de celle-ci, pour le développement et les tests. J'ai essayé de définir la variable LD_LIBRARY_PATH mais l'éditeur de liens (ld) a échoué avec: / usr / …
159 gcc  g++  ld 

3
la déclaration de fonction n'est pas un prototype
J'ai une bibliothèque que j'ai créée, mylib.c: #include <mylib.h> int testlib() { printf("Hello world\n"); return (0); } mylib.h: #include <stdio.h> extern int testlib(); Dans mon programme, j'ai tenté d'appeler cette fonction de bibliothèque: monprogramme.c: #include <mylib.h> int main (int argc, char *argv[]) { testlib(); return (0); } Lorsque j'essaye de …
158 c  gcc 


24
Drapeaux GCC utiles pour C
Au-delà des paramètres -Wallet des paramètres -std=XXX, quels sont les autres indicateurs de compilateur vraiment utiles, mais moins connus, qui peuvent être utilisés en C? Je suis particulièrement intéressé par les avertissements supplémentaires et / ou par la transformation des avertissements en erreurs dans certains cas afin de minimiser absolument …
157 c  gcc  compiler-flags 





2
Que fait réellement le ffast-math de gcc?
Je comprends que le --ffast-mathdrapeau de gcc peut considérablement augmenter la vitesse des opérations flottantes et va en dehors des normes IEEE, mais je n'arrive pas à trouver des informations sur ce qui se passe réellement quand il est activé. Quelqu'un peut-il expliquer certains détails et peut-être donner un exemple …

6
Quel est l'avantage de __builtin_expect de GCC dans les instructions if else?
Je suis tombé sur un #definedans lequel ils utilisent __builtin_expect. La documentation dit: Fonction intégrée: long __builtin_expect (long exp, long c) Vous pouvez utiliser __builtin_expectpour fournir au compilateur des informations de prédiction de branche. En général, vous devriez préférer utiliser les commentaires de profil réels pour cela ( -fprofile-arcs), car …
144 c  linux  gcc  built-in 


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.