1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| int main( int argc, char *argv[])
{
char *mot[4]; // déclaration de 4 chaînes de caractères
int tab[4]; // déclaration d'un tableau de 4 cases d'entiers
mot[0]="carré"; /************************************/
mot[1]="rectangle"; /**** initialisation des 4 mots ***/
mot[2]="triangle"; /**** quelque part en mémoire *****/
mot[3]="rond"; /************************************/
printf("ADRESSE : %d | VALEUR : %s\n",mot[0],*mot); /* affichage adresse et valeur mot 1*/
printf("ADRESSE : %d | VALEUR : %s\n",mot[1],*(mot+1)); /* affichage adresse et valeur mot 2*/
printf("ADRESSE : %d | VALEUR : %s\n",mot[2],*(mot+2)); /* affichage adresse et valeur mot 3*/
printf("ADRESSE : %d | VALEUR : %s\n",mot[3],*(mot+3)); /* affichage adresse et valeur mot 4*/
tab[0]=(long)&mot[0]; /* on met l'adresse du mot 1 dans le tableau d'entier */
tab[1]=(long)&mot[1]; /* on met l'adresse du mot 2 dans le tableau d'entier */
tab[2]=(long)&mot[2]; /* on met l'adresse du mot 3 dans le tableau d'entier */
tab[3]=(long)&mot[3]; /* on met l'adresse du mot 4 dans le tableau d'entier */
/* à partir de la ligne ci-dessous j'ai une erreur : "Segmentation fault (core dumped)" */
printf("ADRESSE : %d | VALEUR : %s\n",tab[0],*tab); /* affichage adresse et valeur mot 1*/
printf("ADRESSE : %d | VALEUR : %s\n",tab[1],*(tab+1)); /* affichage adresse et valeur mot 2*/
printf("ADRESSE : %d | VALEUR : %s\n",tab[2],*(tab+2)); /* affichage adresse et valeur mot 3*/
printf("ADRESSE : %d | VALEUR : %s\n",tab[3],*(tab+3)); /* affichage adresse et valeur mot 4*/
return 0;
} |
Partager