Articles of gcc

Conserver les erreurs de segmentation en essayant de passer struct en function

J’essaie de passer un pointeur sur une queue à la fonction createQueue: void createQueue(struct pqueue *queue){ queue = malloc( sizeof(struct pqueue) ); queue->root = malloc(sizeof(struct node)); queue->root->next = 0; queue->root->taskID = 12; queue->root->priority = 5000; } J’essaie aussi d’append à la nouvelle queue comme ceci: void add(struct pqueue *queue, int taskID, int priority){ struct node […]

passer le pointeur struct aux fonctions ne fonctionnant pas

Motif: Passer des structures à des fonctions telles que nous puissions les changer dans n’importe quelle fonction et récupérer n’importe quelle valeur dans n’importe quelle fonction. J’ai récupéré ce code sur: http://cboard.cprogramming.com/c-programming/126381-passing-structure-reference-through-4-functions.html#post942397 Je l’ai légèrement modifié et le voici: struct_passing.h typedef struct thing { char *x; }thing_t; struct_passing.c #include #include “struct_passing.h” void f4(thing_t *bob) { […]

Différence entre prefetch pour lire ou écrire

Les documents gcc parlent d’une différence entre prefetch pour la lecture et prefetch pour l’écriture. Quelle est la différence technique?

crt0.o et crt1.o – Quelle est la différence?

Récemment, j’ai essayé de déboguer un travail de bas niveau et je ne pouvais pas trouver le crt0.S pour le compilateur ( avr-gcc ) mais j’ai trouvé un crt1.S (et la même chose avec les fichiers .o correspondants). Quelle est la différence entre ces deux fichiers? Est-ce que crt1 est complètement différent ou quoi? Ils […]

Drapeaux par défaut pour le compilateur gcc dans Eclipse

Je veux que tous mes programmes C soient compilés avec les options -Wall -pedantic -ansi par défaut. Existe-t-il un moyen pour Eclipse d’append ces indicateurs à la commande du compilateur par défaut pour tous les projets?

c99 goto initial initial

Lors du débogage d’un crash, j’ai rencontré ce problème dans un code: int func() { char *p1 = malloc(…); if (p1 == NULL) goto err_exit; char *p2 = malloc(…); if (p2 == NULL) goto err_exit; … err_exit: free(p2); free(p1); return -1; } Le problème se produit lorsque le premier malloc échoue. Parce que nous sautons […]

Obtenir les adresses de début et de fin de la section de texte dans un exécutable

Je dois obtenir les adresses de début et de fin de la section de texte d’un exécutable. Comment puis-je l’avoir? Je peux obtenir l’adresse de départ à partir du symbole _init ou du symbole _start , mais qu’en est-il de l’adresse de fin? Dois-je considérer l’adresse de fin de la section de text comme la […]

déclaration implicite à l’aide de -std = c99

Je reçois cet avertissement: ( -std=c99 -pedantic ) warning: implicit declaration of function ‘strndup’ [-Wimplicit-function-declaration] mais j’importe ces libs: #include #include #include Et alors?! 🙁 // file.c: #include “file.h” strndup(…) // file.h: #include #include #include

Toujours le “erreur: attendu” = “,”, “,”; “,” asm “ou” __atsortingbute__ “avant” * “jeton

Ceci est un petit programme en C pur illustrant le problème. Le programme ne fait rien; c’est une version allégée d’un programme plus important qui présente le même problème. Voici le scénario: Mac OS X Lion; version gcc i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (basée sur la version 5658 d’Apple Inc.) (version LLVM 2335.15.00); Exemple de code: #include […]

Dans quelle mesure la liaison est-elle portable? #pragma faible my_symbol

Dans quelle mesure la liaison est-elle portable? #pragma weak my_symbol Je vois cette question: comment faire en sorte que la liaison-travail-faible-avec-gcc discute de la façon de le faire fonctionner. Mais existe-t-il un bon moyen de faire cela de manière à ce que gcc ne soit pas requirejs? Quelle est la différence entre une liaison faible […]