C/Visual C - puntero char

 
Vista:

puntero char

Publicado por rsrobin (31 intervenciones) el 08/02/2002 20:44:22
Hola y gracias de antemano.

Bueno, mi duda es como puedo saber la cantidad de memoria a la cual a punta un puntero char.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:puntero char

Publicado por Ismael (230 intervenciones) el 09/02/2002 00:19:20
En mi opinión solo la memoria correpondiente a un item del dato apuntado, ed decir i byte (si char es un byte). A partir de ahi, mediante aritmética de punteros, puedes ampliar memoria seleccionada... pero es un problema, PUEDES SOBREESCRIBIR DATOS IMPORTANTES.
Es obligacion del programador hacer una reserva de memoria para evitar problemas (fuciones malloc(), caloc(), realloc()..) En este caso sabes la cantidad de memoria a la que apunta = cantidad de memoria reservada. Problema de punteros...
Ismael
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:puntero char

Publicado por Alexis Leung (70 intervenciones) el 10/02/2002 02:04:33
Eso es fácil, solo debes saber cuando le asignas inicialmente con las funciones de asignación de memoria. A menos que no lo utilices, ese puntero puede estar apuntando a un sitio con información útil u otra parte de memoria ocupada por otros datos.

Así que nunca uses un puntero SIN INICIALIZAR (va para todo tipo de dato).

Así que:

char *letra;

letra = (char *) malloc (100 * sizeof(char));

El (char *) aunque no es necesario en C, si lo es en C++, asi que sirve para ser más portable.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar