Bonjour à tous !
Après avoir lu des articles sur les pointeurs, dont celui de developpez.com, j'aimerais mettre au clair quelques incompréhensions. Oui je suis un peu lent...![]()
Voici mes 3 questions:
- Est ce que ces 2 lignes d'instructions sont identiques ?
Autrement dit, malloc ne trouve son utilité que lorsque nous souhaitons considérer la mémoire allouée autrement qu'une suite d'octets ? Ceci dans le but d'utiliser notre pointeur comme un tableau ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 int *px = malloc(sizeof(int)); //EST LA MEME CHOSE QUE: int *px; // ?
Donc lorsque je veux initialiser une chaîne de caractère, il est inutile d'utiliser un malloc ? Si je fais ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part char *phrase= "Bonjour à tous.";- La mémoire va prévoir un octet par caractère + 1 et cet emplacement ne risquera pas d'être effacé par l'initialisation d'une autre variable ?
- Aussi j'ai cru comprendre qu'un pointeur attendait une adresse, dans la ligne d'instruction ci-dessus je ne lui en ai pourtant pas donné... Est-ce une intervention du compilateur ?
D'avance je vous remercie pour votre aide !
Partager