elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con strings
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con strings  (Leído 2,476 veces)
FMLTGRD

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Problema con strings
« en: 5 Diciembre 2014, 23:24 pm »

Buenas tardes, tengo un pequeño problema al trabajar con arreglos de caracteres, mi programa tiene un método getText que recibe como parámetro un HWND que debe de corresponder a un control "EDIT". El problema es que no puedo limitar la cantidades de caracteres del arreglo. Si alguien me puede ayudar se lo agradecería mucho.

Les dejo el código de la función:

Código:
    TCHAR lpstrBuffer[5] = "....";

void getText(HWND campoTexto){

            HWND campoTexto;
            SendMessage(c, EM_GETLINE, 0, (LPARAM)lpstrBuffer);
            printf("%s\n", lpstrBuffer);

}


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Problema con strings
« Respuesta #1 en: 6 Diciembre 2014, 00:12 am »

Los arreglos de caracteres, cuando se interpretan como texto, o se envía junto al puntero la cantidad de caracteres a usar, o es que el método lee hasta que encuentra un byte nulo (0,'\0').


En línea

FMLTGRD

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Problema con strings
« Respuesta #2 en: 6 Diciembre 2014, 00:39 am »

Si, eso lo sé.
El problema es que a pesar de que puedo ingresar los datos, no puedo hacer que el array solo permita una cierta cantidad de caracteres, ya que aunque el tamaño del arreglo es de 5, si escribo más de 5 caracteres estos se guardan en el buffer.

Gracias por tu ayuda.
En línea

kafok

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Problema con strings
« Respuesta #3 en: 6 Diciembre 2014, 01:40 am »

Haber, lo que puedes hacer:

PD: tengo la api de window un poco olvidada, pero creo que los buffers que devuelve windows no terminan en caracter nulo, cuidado!
En línea

FMLTGRD

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Problema con strings
« Respuesta #4 en: 6 Diciembre 2014, 02:35 am »

Muchas gracias, es justo lo que necesitaba, en verdad te lo agradezco.
Por otra parte ¿de pura casualidad no sabrás como el api de windows delimita un string si no es con el caracter nulo?
En línea

kafok

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: Problema con strings
« Respuesta #5 en: 6 Diciembre 2014, 03:33 am »

No estoy seguro de eso, pero creo que me dio problemas cuando trabaje con los edit y creo que no llegue a solucinar del todo, pero el mensaje EM_GETLINE devuelve cuantos caracteres a copiado. Si devuelve 4, pues en tu buffer la quinta posicion la pones a '\0', que el maximo es 9 y se copian 9 caracteres.... pues facil, reserva una mas, es decir 10, y si copia los 9 caracteres pon en tu buffer en la decima posicion el caracter nulo. Vamos, que lo hagas a mano como quien dice.
En línea

FMLTGRD

Desconectado Desconectado

Mensajes: 16


Ver Perfil
Re: Problema con strings
« Respuesta #6 en: 6 Diciembre 2014, 05:16 am »

Perfecto, en verdad no sabes cuanto te agradezco tu ayuda, me funcionó muy bien.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema de strings: Palindromos.
Ejercicios
j retirado 7 10,045 Último mensaje 22 Julio 2009, 19:43 pm
por Ragnarok
Problema con STRINGS
Programación C/C++
kaskull 2 2,201 Último mensaje 28 Diciembre 2012, 19:00 pm
por kaskull
Problema con strings
Programación C/C++
pablovg9 6 2,243 Último mensaje 20 Julio 2015, 00:30 am
por pablovg9
Problema con if de comparación de Strings
Java
Runforyourlife 2 1,717 Último mensaje 26 Noviembre 2016, 23:30 pm
por Runforyourlife
cifrado c++ problema con strings
Programación C/C++
Kaemis 2 2,587 Último mensaje 28 Diciembre 2016, 10:53 am
por Kaemis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines