SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: canton00 en Lunes 14 de Diciembre de 2009, 08:27

Título: leer frases enteras
Publicado por: canton00 en Lunes 14 de Diciembre de 2009, 08:27
hola
mi pregunta es simple
como puedo hacer q pida una frase y luego me salga la frase completa con todo y espacios
esto es lo q llevo
#include<stdio.h>
#include<conio.h>
int main()
{
 char frase[21];
 printf("Pon frase t "); //pido una frase
 scanf("%s", frase); // la leo
 printf("%s", frase);// la escribe,
 getch();  
}
el problema es q si pongo: hola como estas, solo pone hola, nesesito q pueda poner la frase completa
Título: Re: leer frases enteras
Publicado por: Eternal Idol en Lunes 14 de Diciembre de 2009, 09:03
Usa fgets (http://www.cplusplus.com/reference/clibrary/cstdio/fgets/) (con stdin) en lugar de scanf.
Título: Re: leer frases enteras
Publicado por: undertakos en Viernes 25 de Diciembre de 2009, 18:02
Cita de: "canton00"
#include<stdio.h>
#include<conio.h>
int main()
{
 char frase[21];
 printf("Pon frase t "); //pido una frase
 gets(frase); // la leo
 printf("%s", frase);// la escribe,
 getch();  
}

asi quedaria el codigo, la funcion se llama gets y solo introduces el nombre de tu variable sencillo de usar;
Título: Re: leer frases enteras
Publicado por: Eternal Idol en Viernes 25 de Diciembre de 2009, 18:58
gets es una funcion insegura, a diferencia de fgets, no te permite especificar el tamaño del buffer.
Título: Re: leer frases enteras
Publicado por: undertakos en Sábado 26 de Diciembre de 2009, 01:56
fgets no es para archivos? por ejemplo un txt,  en mi primer valor en donde se va a guardar,  en el segundo valor cuantos caracteres voy a leer y la tercera de que archivo lo voy a leer

fgets (mystring , 100 , pFile);

bueno asi le entendi a la pagina que pusiste quien sabe si le capte bien :P
Título: Re: leer frases enteras
Publicado por: Eternal Idol en Sábado 26 de Diciembre de 2009, 02:05
No necesariamente (por eso aclare con stdin): "Pointer to a FILE object that identifies the stream where characters are read from.
To read from the standard input, stdin can be used for this parameter."
Título: Re: leer frases enteras
Publicado por: undertakos en Sábado 26 de Diciembre de 2009, 02:15
Cita de: "Eternal Idol"
No necesariamente (por eso aclare con stdin): "Pointer to a FILE object that identifies the stream where characters are read from.
To read from the standard input, stdin can be used for this parameter."

es verdad nunca lo habia aplicado ni sabia pero todos los dias se aprende algo muchas gracias
Título: Re: leer frases enteras
Publicado por: Eternal Idol en Sábado 26 de Diciembre de 2009, 10:38
De nadas  B)