Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pointeurs sur tableaux de données

2 réponses
Avatar
Vincent Guichard
Bonjour,

Soit un tableau d=E9finit ainsi:

char * const fr_strings[] =3D {
"Ligne 1",
"Ligne 2",
/* ... */
};

Je peux d=E9finir un pointeur sur ce tableau de cette fa=E7on:
char * const * strings =3D fr_strings;

et je peux utiliser strings[i] partout ou j'utiliserais fr_strings[i].

(Jusque l=E0, j'ai bon, ou je me suis d=E9j=E0 compl=E8tement fourvoy=E9?=
)

Soit maintenant un tableau d=E9finit ainsi:

char * const fr_dbl_strings[][2] =3D {
{ "Ligne 1", "Valeur 1" },
{ "Ligne 2", "Valeur 2" },
/* ... */
};

Quelle doit =EAtre la d=E9finition d'un pointeur dbl_strings que je pourr=
ais=20
utiliser en lieu et place de fr_dbl_strings? Un tel pointeur peut-il=20
m=EAme =EAtre d=E9fini?

Merci beaucoup,

Vincent Guichard

2 réponses

Avatar
Antoine Leca
En news:4746b0e6$0$5074$, Vincent Guichard va
escriure:
Soit un tableau définit ainsi:
char * const fr_strings[] = { /* ... */ };
Je peux définir un pointeur sur ce tableau de cette façon:
char * const * strings = fr_strings;
...

Soit maintenant un tableau définit ainsi:

char * const fr_dbl_strings[][2] = {
{ "Ligne 1", "Valeur 1" }, /* ... */
};

Quelle doit être la définition d'un pointeur dbl_strings


char * const (* dbl_strings)[2] = fr_dbl_strings;


Antoine

Avatar
Vincent Guichard
Quelle doit être la définition d'un pointeur dbl_strings


char * const (* dbl_strings)[2] = fr_dbl_strings;

Antoine



Merci beaucoup!

Vincent