Programación General > Visual C++

 Stringbuilder En Visual C++

(1/3) > >>

lyn489:
Hola,
estoy trabajando en mi primera aplicacion WFA en visual studio 2005,para las cadenas de caracteres uso la clase StrinBuilder, pero resulta q ahora necesito comparar un SubString de un StringBuilder con un int,y no se como hacerlo, podrian ayudarme por favor ??

Este es un Ejemplo de lo q necesito hacer:

StringBuilder^ myString = gcnew StringBuilder();
myString.Insert(0,"pepe 152");

//si el substring a partir de la posicion 6,tres caracteres mas adelante es 152
if(myString->ToString()->SubString(6,3) == 152)
{
    return 1;
}

ProfesorX:
La comparacion que intentas hacer no es posible, ya que lo que estas obteniendo no es el numero 152, sino una cadena que contiene "152".

Aunque el contenido de una cadena sean numeros, no significa que los puedas manipular como numeros, siguen siendo cadenas.

Lo que debes utilizar, es la funcion strcmp, para comparar cadenas:


--- Código: Text --- if (strcmp(myString->ToString()->SubString(6,3), "152") == 0)  
la funcion strcmp devuelve 0 cuando las cadenas son iguales.

Saludos :)

lyn489:
hola ProfesorX
muchas gracias por responderme,he tratado de utilizar esa funcion de C,pero el compilador no me la reconoce,sabes si tengo que incluir alguna libreria??
sds
Lyn

JuanK:
no te la reconoce porque estas trabajando con C++ + managed extensions, es decir C++ .net, por lo cual:

1- se debe mover el hilo a otro foro
2- la solución es:


--- Código: Text ---if (myString->ToString()->SubString(6,3) == "152") 

lyn489:
Hola Juank
sabes lo q necesito en realidad es ver si un caracter de un string esta entre 0 y 9 o si esta entre A y Z, para eso en C++ con builder lo q hago es esto:

String p;
p = "HOLA 109";
if(p.SubString(1,1).StrToInt() >= 0 && p.SubString(1,1).StrToInt() <= 9)
{
    //......
}
else
if(p.SubString(1,1).>= 'A' && p.SubString(1,1).StrToInt() <= 'Z')
{
  //....
}

me puedes decir como hacer esto con la clase StringBuilder de visual c++??
sds
LyN

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa