Considérons le code suivant:
Je suis pas mal convaincu que les deux premiers assignations sont correctes. Les deux autres me chicottent un peu. En gros, je vois qu'on déclare un pointeur vers un char, mais on dit pas à quel endroit pointer et ensuite on assigne un string à cette adresse. Pourriez-vous m'éclairer sur les points suivants:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 char foo1[] = "foobar"; char foo2[10] = "foobar"; char *foo3 = "foobar"; char *foo4; foo4 = "foobar";
1. Est-ce que les deux déclarations et assignations par pointeur sont correctes et légales?
2. Y a-t-il des risques d'overlap de mémoire?
3. Si c'est légal, est-ce que "foobar" représente une adresse en mémoire?
Merci
Partager