Perdón querÃa decir de String a AnsiString
AgradecerÃa que alguien me dijera cómo se puede pasar de String a AnsiString al igual que en caso contrario se puede hacer con c_str(). Gracias de antemano.
var s:string;
as:ansistring;
a mi me va con as:=ansistring(s); directamente
bye
as:ansistring;
a mi me va con as:=ansistring(s); directamente
bye
Vamos a ver String es un tipo de datos de Pascal y funciona prácticamente igual al AnsiString de C++builder. Creo que te refieres a pasar de cadena c (c string) Osea para que nos entendamos la que termina en un carácter '/0', a AnsiString.
Esto último es muy facil, solo tienes que llamar a la función con el mismo nombre que el tipo, un ejemplo:
char cadenac[5]="hola"; // esto es una cadena c inicializada, por el quinto caracter es el '/0' fin de cadena, el compilador sabe que tiene que ponerlo por definir un vector (array) de caracteres e iniciarlo a una cadena.
AnsiString CadenaAnsi; // esta cadena es dinámica, no necesita longitud porque se va adaptando a lo que le metas.
CadenaAnsi= AnsiString(cadenac); // busca en cadenac todos los caracteres hasta llegar a '/0', asi que al final en cadenaAnsi tendremos una cadena de 4 caracteres que pone hola.
Me queda decir que la función AnsiString() está sobrecargada, es decir, existe una función ansistring para cada tipo de dato. Para que nos entendamos, también convierte un int a AnsiString, además de otros tipos de variables.
Esto último es muy facil, solo tienes que llamar a la función con el mismo nombre que el tipo, un ejemplo:
char cadenac[5]="hola"; // esto es una cadena c inicializada, por el quinto caracter es el '/0' fin de cadena, el compilador sabe que tiene que ponerlo por definir un vector (array) de caracteres e iniciarlo a una cadena.
AnsiString CadenaAnsi; // esta cadena es dinámica, no necesita longitud porque se va adaptando a lo que le metas.
CadenaAnsi= AnsiString(cadenac); // busca en cadenac todos los caracteres hasta llegar a '/0', asi que al final en cadenaAnsi tendremos una cadena de 4 caracteres que pone hola.
Me queda decir que la función AnsiString() está sobrecargada, es decir, existe una función ansistring para cada tipo de dato. Para que nos entendamos, también convierte un int a AnsiString, además de otros tipos de variables.
