conversion de cadenas

Moderador: ivancp

Preguntas y respuestas sobre programacion en Windows con Visual C++

conversion de cadenas

Notapor wilton007 » Mar Nov 08, 2011 10:03 am

estoy practicando en vc++ 2010
en el evento de un boton escribí

char *cadena="esto es una cadena";
MessageBox((LPCTSTR)cadena);

el mensaje que muestra es chino :lol:

porque hay proplema en la conversion
algun experto me puede ayudar :?
wilton007
Novato
Novato
 
Mensajes: 12
Registrado: Vie Sep 02, 2011 1:36 pm


Re: conversion de cadenas

Notapor ivancp » Jue Nov 10, 2011 6:43 am

Cual de las dos lineas funciona?

MessageBox("prueba 1");

MessageBox(_T("prueba 2"));
Imagen @latindev | Mi Blog
Por favor lee las reglas del foro
Avatar de Usuario
ivancp
Colaborador
Colaborador
 
Mensajes: 680
Registrado: Jue Sep 06, 2007 12:58 pm


Re: conversion de cadenas

Notapor wilton007 » Vie Nov 11, 2011 5:00 pm

esta linea funciona
MessageBox(_T("prueba 2"));

_T() es una funcion ????
wilton007
Novato
Novato
 
Mensajes: 12
Registrado: Vie Sep 02, 2011 1:36 pm

Re: conversion de cadenas

Notapor ivancp » Vie Nov 11, 2011 5:26 pm

Hola,

Tienes habilitada la opcion de "Usar Unicode" en tu proyecto, cambia las Propiedades de proyecto para que puedas ejecutar las cadenas "normales", a menos que quieras trabajar con Unicode necesariamente.

Saludos.
Imagen @latindev | Mi Blog
Por favor lee las reglas del foro
Avatar de Usuario
ivancp
Colaborador
Colaborador
 
Mensajes: 680
Registrado: Jue Sep 06, 2007 12:58 pm

Re: conversion de cadenas

Notapor wilton007 » Vie Nov 11, 2011 6:18 pm

si desactivo la opcion unicode se desactivan los estilos visuales
wilton007
Novato
Novato
 
Mensajes: 12
Registrado: Vie Sep 02, 2011 1:36 pm

Re: conversion de cadenas

Notapor ivancp » Vie Nov 11, 2011 9:47 pm

Entonces debes usar cadenas unicode en todo tu proyecto,

Las cadenas deben estar encerradas entre la macro _T("texto");
Tambien debes usar CString en vez de char *, o uscar wchar_t *,

Solo eso.
Imagen @latindev | Mi Blog
Por favor lee las reglas del foro
Avatar de Usuario
ivancp
Colaborador
Colaborador
 
Mensajes: 680
Registrado: Jue Sep 06, 2007 12:58 pm

Re: conversion de cadenas

Notapor wilton007 » Sab Nov 12, 2011 2:21 am

tengo que usar la libreria mysql
por ejemplo en la funcion
mysql_real_query(MYSQL *mysql,const char *q, unsigned long length)
el segundo parametro es una cadena de tipo const char*
si la cadena de consulta es un objeto CString o wchar_t*
la conversion de CString o wchar_t a const char* esta el problema :idea:
wilton007
Novato
Novato
 
Mensajes: 12
Registrado: Vie Sep 02, 2011 1:36 pm

Re: conversion de cadenas

Notapor ivancp » Sab Nov 12, 2011 7:43 am

Y si usas la clase std:string conjuntamente con la API MySQL para C++?
Imagen @latindev | Mi Blog
Por favor lee las reglas del foro
Avatar de Usuario
ivancp
Colaborador
Colaborador
 
Mensajes: 680
Registrado: Jue Sep 06, 2007 12:58 pm


    

Volver a Visual C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados