Bonjour, je cherche a convertir "long p1 = CNC_GetParameter(rdPtr);" en "char temp[];".
Je sait que ca a l'air tout bête mais j'ai pas trouvé d'indications sur le net.
Pouvez vous m'aider?
Printable View
Bonjour, je cherche a convertir "long p1 = CNC_GetParameter(rdPtr);" en "char temp[];".
Je sait que ca a l'air tout bête mais j'ai pas trouvé d'indications sur le net.
Pouvez vous m'aider?
J'ai mal dit je croit...
Mon paramètre est une chaine qui sort comme long (automatiquement) mais je voudrait le comparer a une autre chaine avec strcmp()
Si c'est une action, tu peux récupérer ton paramètre de type char* (ou LPSTR) en faisant un simple cast :
LPSTR string1 = (LPSTR)param1
LPSTR string2 = (LPSTR)param2
Si tu as plus de paramètres à récupérer, tu doit utiliser les fonctions CNC_GetStringParameter() en faisant un cast.
En fait tu récupères un pointeur stocké dans un long qui pointe vers une zone mémoire stockant une chaine de caractère.
Si c'est une expression c'est un peu plus compliqué, tu dois récupérer ton paramètre comme ceci :
LPSTR string1 = (LPSTR)CNC_GetFirstExpressionParameter(rdPtr, param1, TYPE_STRING)
LPSTR string2 = (LPSTR)CNC_GetNextExpressionParameter(rdPtr, param1, TYPE_STRING)
LPSTR est un typedef de char*. Tu peux donc utiliser strcmp() avec un LPSTR ainsi que strcpy().
Ok merci!
Ca marche enfin!
Edit: C'est une action