Donc, j’ai écrit ce code ci-dessous qui est supposé passer un tableau de chaînes à une fonction, qui sortinge ensuite le tableau dans l’ordre alphabétique. Je sais que ce que j’ai fait n’est probablement pas joli, mais c’est pour l’école et je dois le transmettre à une fonction et utiliser strcmp . J’ai rencontré quelques […]
Cet exemple comstack sans avertissements ni erreurs (gcc 4.8.2 -Wall): #include int main() { char c; int i; printf(“%p %02x\n”,&i,c[&i]); printf(“%p %02x\n”,&c,c[&c]); // important to note that this line DOESN’T comstack: //printf(“%p %02x\n”,&i,c[i]); // which makes sense as c is NOT an array, it is a char. return 1; } Pourquoi la syntaxe c [& […]
Dans mon algorithme, je sais travailler avec des tableaux statiques, pas dynamics. Mais j’atteins parfois la limite de la stack. Ai-je raison de dire que les tableaux statiques sont stockés dans la stack? Quels parameters affectent ma taille de stack maximale pour un programme C? Existe-t-il de nombreux parameters système qui affectent la taille maximale […]
Étant donné un tableau de structure (en C), je tente d’imprimer les résultats en groupes de genre et en sous-ordre par ordre numérique. Par exemple: struct employee{ char gender[13] char name[13]; int id; }; Disons que je définis le tableau de structure comme suit: struct employee info[2]={{“male”,”Matt”,1234},{“female”,”Jessica”,2345},{“male”,”Josh”,1235}}; Comment puis-je imprimer les résultats comme 1234 Matt […]
Est-il possible de le faire sous une forme condensée? GLfloat coordinates[8]; … coordinates[0] = 1.0f; coordinates[1] = 0.0f; coordinates[2] = 1.0f; coordinates[3] = 1.0f; coordinates[4] = 0.0f; coordinates[5] = 1.0f; coordinates[6] = 0.0f; coordinates[7] = 0.0f; return coordinates; Quelque chose comme coordinates = {1.0f, …}; ?
EDIT: apparemment une partie de ceci n’est pas autorisé / a changé dans diverses normes C. Pour mon propre avantage hypothétique, supposons que nous gcc test.c sans options standard ou d’avertissement. En particulier, je regarde les spécificités sous le capot. J’ai ajouté ma compréhension actuelle. Ai-je raison? char **c1; //Size for a pointer is allocated […]
J’ai le programme C suivant: #include int main(){ int a[2][2] = {1, 2, 3, 4}; printf(“a:%p, &a:%p, *a:%p \n”, a, &a, *a); printf(“a[0]:%p, &a[0]:%p \n”, a[0], &a[0]); printf(“&a[0][0]:%p \n”, &a[0][0]); return 0; } Il donne la sortie suivante: a:0028FEAC, &a:0028FEAC, *a:0028FEAC a[0]:0028FEAC, &a[0]:0028FEAC &a[0][0]:0028FEAC Je ne suis pas capable de comprendre pourquoi sont &a , […]
J’essaie de créer une fonction générique qui, lorsqu’elle est appelée, alloue une mémoire contiguë à un tableau dimensionnel. L’objective est de réaliser quelque chose comme ci-dessous donc pour y parvenir – l’équation que j’utilise est Type **pArray; int total_elements = ((rows * cols) + rows); pArray = (Type **) malloc(total_elements * sizeof(Type)); Je suis également […]
Je ne comprends pas comment savoir combien de fois un numéro a été répété dans une entrée utilisateur. Je suis capable de saisir des numéros et de voir quels numéros se répètent, mais je ne sais pas comment imprimer chaque numéro saisi ni combien de fois ce numéro a été utilisé. C’est ce que j’ai […]
Comment convertir un tableau de caractères sur 8 octets en long puisque << ne fonctionne pas pour le type long? #define word_size 8 long num = 0; char a[word_size] = “\x88\x99\xaa\x0bb\xcc\xdd\xee\xff”; for (i=0; i < word_size;i++) { a[(word_size-1) – i] |= (num << (8*(word_size – i – 1))) & 0xFF; } printf("%lx\n", num);