Buenas, mi problema es que estoy haciendo un programa que pide al usuario una frase y la transcribe a un codigo. No se como continuar ya que tengo bastante lio con los cin.get; El proposito es pedir una frase, que lea cada caracter de la frase y detecte que carácter es.
Por ejemplo: hola mundo --> h o l a ' ' m u n d o
Os dejo con el programa y gracias de antemano:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
void pedirFrase();
int cambiarLetra();
int main()
{
int letra;
setlocale(LC_ALL, "spanish");
pedirFrase();
cambiarLetra();
system("pause");
return 0;
}
void pedirFrase()
{
char c;
char str[200];
cout << "Introduce una frase para cifrar: " << endl;
cin.getline(str, 200, '.');
cout << "Tu frase es: " << str << endl;
cin.get();
}
int cambiarLetra()
{
char letra;
if (letra = 'a')
{
cout << "0I" << endl;
}
return letra;
}
Mod: Los códigos deben ir en etiquetas GeSHi
Ok en primera instancia por lo que ví en el if de la función de cifrar tenes un error, deberías poner '==' en vez de '='.
Ahora, deberías generar una comunicación entre tus funciones es decir, no les pasas argumentos? Una no retorna valores?
Planteate un algoritmo de cifrado y pensá el diagrama de tus funciones.
Algo así.
int recibirString(char *miString) - Funcion que pide el string y lo valida.
//
// La función almacena en miString la cadena obtenida.
// Retorna -1 si hay error o 0 si todo está bien.
char cifrarString(char *miString) - Funcion que agarra caracter a caracter y lo convierte, retorna la cadena cifrada.
Después deberías hacer una función que interprete una cadena cifrada y devuelva la descifrada.
Muchas gracias, siento la tardanza