elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con string, char, etc
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con string, char, etc  (Leído 1,963 veces)
GenR_18

Desconectado Desconectado

Mensajes: 115


Ver Perfil
Problema con string, char, etc
« en: 21 Septiembre 2013, 02:05 am »

Pff de seguro es una tonteria, pero esta tonteria me ha llevado buen rato quebrandome la cabeza  :silbar:

Lo que quiero hacer es recibir valores tipo cadena y mostrarlos completos, es decir:

Código:
#include <iostream>

using namespace std;

int main(){

     char nombre[50];
     cout << "Nombre(s):" << endl;
     cin >> nombre;
     cout << nombre << endl;

     return 0;
}


Que si yo ingreso algo como "Nombre Apellido" (notese el espacio), no sólo me muestre "Nombre" (como lo hace), sino que me guarde toda la frase que el usuario ingrese, lo he probado de varias formas, tratando de ver cuál me funciona, pero nada.

Código:
#include <iostream>
#include <string> // o string.h

using namespace std;

int main(){

     string nombre;
     cout << "Nombre(s):" << endl;
     cin >> nombre;
     cout << nombre << endl;

     return 0;
}

Código:
#include <iostream>
#include <string.h>

using namespace std;

int main(){

     char *nombre;
     cout << "Nombre(s):" << endl;
     cin >> nombre;
     cout << nombre << endl;

     return 0;
}

Como se habrán dado cuenta, ya no sé ni qué estoy haciendo :xD . Con el estrés de la semana y el poco tiempo que he tenido para investigar, pues he decidido pedirles ayuda.

Soy relativamente nuevo en C/C++, vengo de la onda web (PHP, javascript) y Python, en donde esto es 1000 veces más simple  :¬¬

PD: El punto es realizarlo en C++.

Gracias por su ayuda ;D

Salu2


En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Problema con string, char, etc
« Respuesta #1 en: 21 Septiembre 2013, 02:51 am »

El problema se debe al uso del operador ">>", cuando su operando es de tipo "char *" este lee (y almacena en la dirección indicada) una palabra. La solución es utilizar la función std::istream::getline, una opción mejor es utilizar la clase string y la función std::getline.

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
GenR_18

Desconectado Desconectado

Mensajes: 115


Ver Perfil
Re: Problema con string, char, etc
« Respuesta #2 en: 21 Septiembre 2013, 19:30 pm »

El problema se debe al uso del operador ">>", cuando su operando es de tipo "char *" este lee (y almacena en la dirección indicada) una palabra. La solución es utilizar la función std::istream::getline, una opción mejor es utilizar la clase string y la función std::getline.

Un saludo

Gracias por la ayuda, solucionado  ;D

Salu2
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Convertir un string a char
Programación C/C++
nolasco281 4 4,916 Último mensaje 11 Marzo 2014, 03:07 am
por rir3760
diferencia entre variables char y string en c++
Programación C/C++
d91 2 16,242 Último mensaje 12 Mayo 2014, 08:48 am
por eferion
Conversion de String Constante a Char*
Programación C/C++
jonniemaxxx 5 2,934 Último mensaje 24 Mayo 2014, 20:19 pm
por jonniemaxxx
Convertir String ^ a char * de la manera mas rápida posible.
Programación General
SARGE553413 4 2,881 Último mensaje 17 Julio 2014, 01:35 am
por engel lex
Comparar valores String o Char [C++]
Programación C/C++
zikotik 9 6,890 Último mensaje 16 Noviembre 2014, 20:39 pm
por zShackra
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines