FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
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. |
#2
|
||||
|
||||
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"; Label1->Caption = str; Código:
char str[] = "318"; Label1->Caption = AnsiString(str); Código:
char str[3] = "318"; Código:
char str[] = "318"; //OK: el compilador reserva 4 char char str[4] = "318"; //OK char str[3] = "318"; // MAL |
#3
|
||||
|
||||
Como bien indica escafandra, esto te dará un bonito error de puntero nulo que acabará bloqueando tu programa, como mínimo
El motivo: 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"; |
#4
|
|||
|
|||
Solucionado, muchas gracias a todos por vuestras respuestas.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Convertir char*, char[], string | lmpadron | C++ Builder | 2 | 29-10-2010 09:08:45 |
Uso de AnsiString | 11_8_88 | C++ Builder | 8 | 14-08-2010 20:53:47 |
Problema con AnsiString | Pedro-Juan | Varios | 7 | 01-11-2007 08:16:39 |
conversion char a date | gmontes | Firebird e Interbase | 2 | 23-09-2005 20:27:32 |
AnsiString en una Dll | Trigger | API de Windows | 2 | 21-01-2004 22:53:20 |
|