Código:
saludos#include<stdio.h> #include<string.h> int main () { char * pepe; scanf("%s", &pepe); printf("%s\n", &pepe); }
cronos
| |||
Respuesta: Leer char* Cambia char* pepe por char pepe[10] o por la cantidad de caracteres que esperas recibir. En C++ existe el tipo string que te libera de la necesidad de especificar el largo.
__________________ Visita mi perfil en LinkedIn |
| |||
Respuesta: Leer char* Más adelante podrás ver cómo usar malloc() para almacenar únicamente la memoria que necesites para el nombre (ni mas ni menos) Aguante C ! |
| |||
Respuesta: Leer char* Me alegro que te haya servido, pero esa no era mi idea! Ya que estás usando malloc de forma estática, siempre almacenará 100 bytes sin importar el temaño de la cadena leída. La idea de usar malloc() es almacenar la cantidad exacta de bytes para la cadena. Edito: aquí hice un ejemplo de lo que yo pretendía:
Código C:
Ver original Como verás solo se almacena la memoria necesaria para la cadena ingresada. Espero que te sirva! Última edición por carbon; 02/01/2014 a las 17:31 |
Etiquetas: |