Articles of tableaux

Passer un tableau de chaînes à une faute de segmentation de fonction

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 […]

Pourquoi ‘c ‘ est compilé alors que ‘c ‘ ne le fait pas?

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 [& […]

Quelle taille maximale de tableaux statiques est autorisée en 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 […]

sortinger les membres du tableau de structure

É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 […]

Atsortingbuer plusieurs valeurs au tableau en C

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, …}; ?

tableaux de longueur nulle vs pointeurs

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 […]

Les pointeurs a, & a, * a, a , & a et & a sont-elles identiques?

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 , […]

Affectation de mémoire pour un tableau 2D contigu

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 […]

Comment trouver combien de fois un nombre a été répété dans un tableau?

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 […]

Conversion du tableau de caractères sur 8 octets en long

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);