Miércoles 6 de Noviembre de 2024, 02:50
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
»
C++ Builder
(Moderador:
Eternal Idol
) »
String
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: String (Leído 1731 veces)
Devilcpc
Miembro activo
Mensajes: 90
String
«
en:
Martes 21 de Noviembre de 2006, 23:08 »
0
Viendo q mi duda se fue mucho de lo q era el titulo de mi otra discusion aca lo pongo en un tema nuevo:
estoy frente a un pequeño problema, tengo un conjunto de numeros guardados en un string, ej: 012013001231 y quisiera saber como puedo hacer para leerlo uno por uno...
por ejemplo si el primero es un 0 hacer algo, si es un 1 otra cosa, etc, y despues pasar al segundo y asi sucesivamente...
Desde ya muchas gracias
Saludos
Adrian
Tweet
-- Solo se q no se nada, pero aun supero a la generalidad de todos los hombres q no saben eso tampoco --
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: String
«
Respuesta #1 en:
Martes 21 de Noviembre de 2006, 23:41 »
0
Hay varias formas, entre ellas:
Código: Text
char* cadena='0123456789';
char* p;
for(p=cadena; p;p++)
{
if( &p=='0')
{
...
...
}
else if( &p=='1')
{
...
...
}
}
Código: Text
char* p='0123456789';
while(p)
{
if( &p=='0')
{
...
...
}
else if( &p=='1')
{
...
...
}
p++;
}
Código: Text
char* p='0123456789';
do
{
if( &p=='0')
{
...
...
}
else if( &p=='1')
{
...
...
}
}while(++p);
podrias hacer cosas con substr y otras funciones pero no serian tan eficientes.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
Devilcpc
Miembro activo
Mensajes: 90
Re: String
«
Respuesta #2 en:
Miércoles 22 de Noviembre de 2006, 01:03 »
0
Gracias por la respuesta, el problema es q yo a la cadena la tengo en un AnsiString llamado Contenido, y cuando quiero hacer lo siguiente:
Código: Text
char* p;
p = &Contenido;
me dice:
[C++ Error] Programador2.cpp(3930): E2034 Cannot convert 'AnsiString *' to 'char *'
-- Solo se q no se nada, pero aun supero a la generalidad de todos los hombres q no saben eso tampoco --
Max_D
Miembro MUY activo
Mensajes: 117
Re: String
«
Respuesta #3 en:
Miércoles 22 de Noviembre de 2006, 01:28 »
0
Usa la funcion
c_str()
que esta en el string.
Devilcpc
Miembro activo
Mensajes: 90
Re: String
«
Respuesta #4 en:
Miércoles 22 de Noviembre de 2006, 02:44 »
0
Me podrias explicar un poquito mas q es esa funcion o q hace? es q tengo el builder instalado sin ayuda asi q no puedo verlo...
Gracias
-- Solo se q no se nada, pero aun supero a la generalidad de todos los hombres q no saben eso tampoco --
Devilcpc
Miembro activo
Mensajes: 90
Re: String
«
Respuesta #5 en:
Miércoles 22 de Noviembre de 2006, 03:41 »
0
OK
investigando un poco creo q llegue a comprender el uso e hice esto
Código: Text
char aux[15]="";
strncpy(aux,Archivo->Strings[0].c_str(),14);
Label21->Caption= aux;
for( int i = 0; i <= 39; i++ )
{
strncpy(aux,Archivo->Strings[i].c_str(),14);
for( int j = 0; j <= 13; j++ )
{
if (aux[j] == '0')
Punt[i+1][j+1]->Brush->Color==clWhite;
else if (aux[j] == '1')
Punt[i+1][j+1]->Brush->Color==clRed;
else if (aux[j] == '2')
Punt[i+1][j+1]->Brush->Color==clLime;
else if (aux[j] == '3')
Punt[i+1][j+1]->Brush->Color==clYellow;
}
}
Me guarda bien la cadena en aux, eso lo veo cuando la muestro en el label21, pero no me realiza ninguna de las acciones de los if, o sea, nunca se dan como correcto, el punto seguro esta en la comparacion, pero no se me ocurre porq...
-- Solo se q no se nada, pero aun supero a la generalidad de todos los hombres q no saben eso tampoco --
Devilcpc
Miembro activo
Mensajes: 90
Re: String
«
Respuesta #6 en:
Miércoles 22 de Noviembre de 2006, 03:51 »
0
Disculpen mi idiotez, problema solucionado, se me escaparon dos "=" por copiarlo
de otro lado, era asi:
Punt[i+1][j+1]->Brush->Color==clYellow;
y funciona perfecto...
asi q MUCHAS GRACIAS a todos los q me ayudaron
-- Solo se q no se nada, pero aun supero a la generalidad de todos los hombres q no saben eso tampoco --
JuanK
Miembro de ORO
Mensajes: 5393
Nacionalidad:
Re: String
«
Respuesta #7 en:
Miércoles 22 de Noviembre de 2006, 14:16 »
0
ahora que lo reviso, en el ejemplo que puse arriba no era con
&
sino con
*
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
»
C++ Builder
(Moderador:
Eternal Idol
) »
String