Las cadenas de caracteres puts gets en C
– Prog009.cpp
/*Prog009.cpp */
#include<stdio.h>
void main()
{
char texto[65];
printf(«Escribe tu nombre y dos apellidos: «); scanf(«%s»,texto);
printf(«nAcabas de escribir : %s»,texto);
}
Observa que el valor de la variable “texto” es todo lo que hemos escrito antes del primer espacio.
– Prog010.cpp
/* Prog010.cpp */
#include <stdio.h>
void main()
{
char texto[65];
puts(«Escribe tu nombre y dos apellidos: «); gets(texto);
puts(«Acabas de escribir : «); puts(texto);
}
Observa que ahora sí, escribe todo lo que hemos escrito ante la pregunta.
La función gets(texto) es equivalente a scanf, pero con dos diferencias fundamentales:
- Sólo funciona para cadenas de caracteres
- Abarca todo el texto que escribamos hasta que pulsamos la tecla [Return]. Por lo tanto es la que nos interesa si hay espacios en blanco.
puts es equivalente a printf, pero con dos diferencias fundamentales:
- Sólo funciona para cadenas de caracteres.
- No podemos utilizar códigos de formato para “imprimir” variables.
Fuente: Programación en C/C++ (Manual FV) de Fermí Vilà