Bonjour,

Cela fais plusieurs années que je n'ai plus fait de C et je me trouve confronté au probleme suivant :

je réserve une zone memoire pour stocker des Bytes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
char* maZoneByte = char* malloc(1024 *sizeof(char));
La fonction malloc me retourne donc un pointeur sur cette zone.

Je dois maintenant passer cette adresse à une autre application qui est completement découplée. Pour des raisons historique, cette adresse doit être passée par une string.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
char* maZoneByteString = (char*) malloc (9*sizeof(char));
sprintf (maZoneByteString ,"%d",maZoneByte );
maFonctionTier(maZoneByteString ,......); // Appel d'une fonction de l'API
(prototype maFonctionTier: (char* x_ZoneByte, int handle);

Maintenant, dans ma fontionTier, je veux utiliser un pointeur vers la zone de Bytes réservées plus haut. Mon probleme c'est que je ne sais pas comment déclarer ce nouveau pointeur.

A titre d'exemple, malloc me retourne 0x00343010. Si, dans ma fonction tiers, j'écris :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
char* ptZoneByte = 0x00343010;
et que j'utilise cette valeur pour le reste de mon code, tout fonctionne bien.
mais comment initialiser ptZoneByte à l'adresse dont la valeur est stockée dans le parametre x_ZoneByte qui est de type char* ?

Je vous remercie d'avance pour votre aide

cordialement

kurvanov