Pas pour des chaînes TI-Basic ...
Sans utiliser de variable intermédiaire :
SYM_ENTRY *pSymEntry=SymFindPtr($(a),0);
if(*(unsigned char *)(HToESI(pSymEntry->handle))==STR_TAG)
DrawStr(2,2,(unsigned char *)(HeapDeref(pSymEntry->handle)+3),A_NORMAL);
> newone :
Il faut comprendre le format des chaînes de caractères TI-Basic de l'AMS :
XX XX 00 CC CC CC .. .. CC 00 2D
XX XX représente la taille de ce qui suit : c'est-à-dire le nombre d'octets après eux jusqu'à 0x2D.
0x00 sépare.
CC CC .. .. CC représente les octets de la chaîne de caractères, commme en C.
0x00 marque la fin de la chaîne (et la rend compatible aux chaînes C marquées par un 0x00 final)
0x2D est le dernier octet de la variable, le STR_TAG, il lui donne son type.
Je te conseille d'aller voir
ça et
ça