SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: andreina en Jueves 3 de Noviembre de 2005, 20:17
-
Hola
Estoy trabajando con el API de un dispositivo, al invocar una de las fuciones de éste, la funcion como tal debería de llenar una de las variables que le paso, de hecho lo hace hasta cierto punto, en el cual me introduce un caracter incorrecto y pica el contenido de lo que deberia de tener la variable
La funcion tiene la siguiente forma
getDocData(a,B);
luego para ver lo que lleno la funcion hago
printf("Valor de a: %s \n", &a);
Saludos
-
hola,
la verdad noi entendi mucho tu inquietud.
-
me parece un tipico error de cadenas, deberias indicar cual tipo de cadena, referencia a cadena o lo que sea que estas usando por que en c++ hay tropocientas variantes del caso.
-
Si, deberias dar mas datos, como por ejemplo el prototipo de la funcion de la API y los tipos de las variables que estas manejando. Supongo que a sera un puntero a char ...
-
:comp: asi es
poca infomacion, pocas respuestas
-
segun lo qu entiendo si "hasta un punto lo hace bien" hay dos alternativas:
que ese punto este en el medio de la cadena lo que sugiere que lo que esta mal es el metodo interno o que ese punto este al final lo que sugiere que no estas poniendo bien el \0 al final de la cadena.
si la variable no tiene \0 usa write( 1 , variable , num_bytes ); ( creo que era asi )
PD: concuerdo con los demas ( POCA INFORMACION )
:devil: FREEBSD 6.0 salio!
-
:huh: ;) <_< :blink: vaya no entiendo que tienen que ver las apis de un dispositivo con las cadenas.
-
En este caso, segun lo que entendi, una funcion de la API de un dispositivo retorna datos en una cadena y esta no esta bien formada.