Conversión unsigned char a AnsiString
Hola a todos.
Tengo un unsigned char str[3]="318"; Quiero pasarlo a un AnsiChar ss y he probado muchas cosas pero no hay forma. ss=AnsiChar(*str) me da el valor hexadecimal del primer caracter osea el 51. He probado con new String y tampoco. Notese que soy novato en c++ y no encuentro la forma de hacerlo. Gracias. |
Me parece que lo que tu quieres hacer es convertirlo a un AnsiString o String.
Pues es fácil. Implicitamente: Código:
char str[] = "318"; Código:
char str[] = "318"; Código:
char str[3] = "318"; Código:
char str[] = "318"; //OK: el compilador reserva 4 char |
Como bien indica escafandra, esto te dará un bonito error de puntero nulo que acabará bloqueando tu programa, como mínimo :)
Cita:
str[0] = '3' str[1] = '1' str[2] = '8' str[3] = '\0' <- si falta el puntero nulo... ¡¡¡crash!!! porque no se sabe donde acaba la cadena, puntero, etc. En tu caso deberás declararlo como unsigned char str[4]="318"; |
Solucionado, muchas gracias a todos por vuestras respuestas.
|
La franja horaria es GMT +2. Ahora son las 02:16:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi