Questions marquées «c»

C est un langage de programmation à usage général utilisé pour la programmation système (OS et embarqué), les bibliothèques, les jeux et les plateformes multiples. Cette balise doit être utilisée avec des questions générales concernant le langage C, tel que défini dans la norme ISO 9899 (la dernière version, 9899: 2018, sauf indication contraire - également balise les demandes spécifiques à la version avec c89, c99, c11, etc.). C est distinct de C ++ et il ne doit pas être combiné avec la balise C ++ en l'absence d'une raison rationnelle.

12
#define macro pour déboguer l'impression en C?
Essayer de créer une macro qui peut être utilisée pour imprimer des messages de débogage lorsque DEBUG est défini, comme le pseudo-code suivant: #define DEBUG 1 #define debug_print(args ...) if (DEBUG) fprintf(stderr, args) Comment cela se fait-il avec une macro?
209 c  c-preprocessor 



9
Rembourrage et emballage de structure
Considérer: struct mystruct_A { char a; int b; char c; } x; struct mystruct_B { int b; char a; } y; Les tailles des structures sont respectivement 12 et 8. Ces structures sont-elles rembourrées ou emballées? Quand le rembourrage ou l'emballage a-t-il lieu?
209 c  struct  structure  padding  packing 

15
Temps d'exécution du programme C
J'ai un programme C qui vise à être exécuté en parallèle sur plusieurs processeurs. Je dois pouvoir enregistrer le temps d'exécution (qui peut aller de 1 seconde à plusieurs minutes). J'ai cherché des réponses, mais elles semblent toutes suggérer d'utiliser la clock()fonction, ce qui implique ensuite de calculer le nombre …
209 c  benchmarking 




25
Qu'est-ce qu'un pointeur C sinon une adresse mémoire?
Dans une source réputée sur C, les informations suivantes sont données après avoir discuté de l' &opérateur: ... Il est un peu malheureux que la terminologie [adresse de] reste, car elle confond ceux qui ne savent pas de quoi il s'agit et induit en erreur ceux qui le font: penser …


12
Fonctionnement modulo avec des nombres négatifs
Dans un programme C, j'essayais les opérations ci-dessous (juste pour vérifier le comportement) x = 5 % (-3); y = (-5) % (3); z = (-5) % (-3); printf("%d ,%d ,%d", x, y, z); m'a donné la sortie comme (2, -2 , -2)dans gcc. Je m'attendais à un résultat positif …
206 c  gcc  modulo 



17
Passer par référence en C
Si C ne prend pas en charge le passage d'une variable par référence, pourquoi cela fonctionne-t-il? #include <stdio.h> void f(int *j) { (*j)++; } int main() { int i = 20; int *p = &i; f(p); printf("i = %d\n", i); return 0; } Production: $ gcc -std=c99 test.c $ a.exe …


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.