Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Paranormal activity - const char * -

Estas en el tema de Paranormal activity - const char * - en el foro de C/C++ en Foros del Web. Me pasa algo muy extraño: Los 2 primeros printf me pinta la cadena perfectamente, pero en el 3 printf me sale basura. No lo entiendo ...
  #1 (permalink)  
Antiguo 08/11/2012, 05:11
 
Fecha de Ingreso: julio-2010
Mensajes: 216
Antigüedad: 14 años, 3 meses
Puntos: 0
Paranormal activity - const char * -

Me pasa algo muy extraño:
Los 2 primeros printf me pinta la cadena perfectamente, pero en el 3 printf me sale basura. No lo entiendo porque hago lo mismo para otro atributo de array que sea un int y lo pinta perfecto en los 3 printf.

La funcion reader no toca la variable array ni nada.


printf("1 Leido: %s\n", array[0].name);
printf("2 Leido: %s\n", array[0].name);


reader.nextEventType( );
printf("3 Leido: %s\n", array[0].name);
  #2 (permalink)  
Antiguo 08/11/2012, 05:43
 
Fecha de Ingreso: julio-2010
Mensajes: 216
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Paranormal activity - const char * -

La función intermedia es:


Se usa para ir avanzando en la lectura de un XML, asique no afecta para nada al const char *




void ReaderBody::nextEventType(void)
{
if (not scopingActivated_) {
environment_.clear();
}

bool done = false;

do {
done = true;
switch (pullParser_->nextEventType()) {
case PullParser::START_DOCUMENT:
eventType_ = Reader::START_DOCUMENT;
break;
case PullParser::START_TAG:
eventType_ = Reader::START_TAG;
environment_.push_back(pullParser_->getAttributeValues());
break;
case PullParser::END_TAG:
eventType_ = Reader::END_TAG;
if (scopingActivated_) {
environment_.pop_back();
if (environment_.empty()) {
scopingActivated_ = false;
}
}
break;
case PullParser::END_DOCUMENT:
eventType_ = Reader::END_DOCUMENT;
break;
default:
done = false;
break;
}
} while (not done);
}
  #3 (permalink)  
Antiguo 09/11/2012, 19:23
 
Fecha de Ingreso: diciembre-2010
Mensajes: 20
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Paranormal activity - const char * -

Puede ser muchas cosas, para esos casos "paranormales" es mejor:

1. Compila con warnings en nivel máximo y arregla los warnings.
2. Corre un analizador de código estático, para que identifique algunos errores comunes en el código:
http://sourceforge.net/apps/mediawiki/cppcheck/index.php?title=Main_Page

Etiquetas: activity, char, const, funcion, int, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:46.