pi est un pointeur sur un entier; pi vaut 0x5000 et son contenu vaut 300.
Ecrire le programme correspondant (programme dangereux sous WONDOWS).
L'opérateur de "cast", permet d'autre part, à des pointeurs de types différent de pointer sur la même adresse.
Exemple :
char *pc;/* pc pointe sur un objet de type caractère */
int *pi;/* pi pointe sur un objet de type entier */
pi = (int*)malloc(4) ; /* allocation dynamique pour i */
pc = (char*)i;/* c et i pointent sur la même adresse, c sur un caractère */
Correction
#include <stdio.h>
#include <conio.h>
#include <alloc.h>
void main()
{
int *i;
i = (int*)malloc(4);
*i = 300;
printf(" adresse = %p variable = %d\n",i,*i);
free(i);
printf("\nPOUR CONTINUER FRAPPER UNE TOUCHE ");
getch();
}
Aucun commentaire:
Enregistrer un commentaire