Articles of gcc

Comment implémenter la fonction getch () de C dans Linux?

Dans TurboC ++, je peux utiliser la fonction getch() de conio.h . Mais sous Linux, gcc ne fournit pas conio.h . Comment puis-je obtenir les fonctionnalités de getch() ?

Opération de comparaison sur des entiers non signés et signés

Voir l’extrait de code int main() { unsigned int a = 1000; int b = -1; if (a>b) printf(“A is BIG! %d\n”, ab); else printf(“a is SMALL! %d\n”, ab); return 0; } Cela donne la sortie: a est SMALL: 1001 Je ne comprends pas ce qui se passe ici. Comment fonctionne l’opérateur> ici? Pourquoi “a” […]

C optimisation des littéraux de chaîne

vient d’inspecter les éléments suivants dans gdb: char *a[] = {“one”,”two”,”three”,”four”}; char *b[] = {“one”,”two”,”three”,”four”}; char *c[] = {“two”,”three”,”four”,”five”}; char *d[] = {“one”,”three”,”four”,”six”}; et j’obtiens ce qui suit: (gdb) pa $17 = {0x80961a4 “one”, 0x80961a8 “two”, 0x80961ac “three”, 0x80961b2 “four”} (gdb) pb $18 = {0x80961a4 “one”, 0x80961a8 “two”, 0x80961ac “three”, 0x80961b2 “four”} (gdb) pc $19 […]

Désactiver toutes les options d’optimisation dans GCC

Le niveau d’optimisation par défaut pour la compilation de programmes en C utilisant GCC est -O0. qui désactive toutes les optimisations conformément à la documentation de GCC. par exemple: gcc -O0 test.c Cependant, pour vérifier si -O0 désactive réellement toutes les optimisations . J’ai exécuté cette commande: gcc -Q -O0 –help=optimizers Et là, j’ai été […]

Malloc aligné () dans GCC?

Existe-t-il une fonction normalisée dans GCC ou glibc pour allouer un bloc de mémoire au pointeur aligné? Vous aimez _align_malloc () dans MSVC?

Les instructions composées (blocs) sont-elles entourées par des expressions parens dans ANSI C?

En parcourant les sources du kernel Linux, j’ai trouvé un morceau de code dans lequel un bloc d’instructions entouré de parenthèses est traité comme une expression à la mode (ou ML), c’est-à-dire une expression dont la valeur est la valeur de la dernière instruction. Par exemple: int a = ({ int i; int t = […]

C: déclaration initiale de boucle int

Quelqu’un peut-il élaborer sur l’erreur suivante gcc? $ gcc -o Ctutorial/temptable.out temptable.c temptable.c: In function ‘main’: temptable.c:5: error: ‘for’ loop initial declaration used outside C99 mode tentable.c: … /* print Fahrenheit-Celsius Table */ main() { for(int i = 0; i <= 300; i += 20) { printf("F=%d C=%d\n",i, (i-32) / 9); } } PS: Je […]