En la universidad hubo un profesor bastante experimentado en el lenguaje C++ que decia que el cin era muy inseguro y se podia filtrar dat...

Julian Andres Cano Orozco

Julian Andres Cano Orozco

Pregunta
studenthace 4 años

En la universidad hubo un profesor bastante experimentado en el lenguaje C++ que decia que el cin era muy inseguro y se podia filtrar datos de alguna manera y que en ves de usarlo tal cual se debia hacer una especie de escapado con un string auxiliar quedando el codigo como lo voy a mostrar a continuacion, alguien sabe sobre ello? es que en todos los tutoriales enseñan la forma en que aquel profesor no le gusta:

#include <iostream> #include <string> using namespace std; int main() { int edad = 0; string aux; cout << "Introduce su edad: "; getline(cin, aux); edad = stoi(aux); cout << "Su edad es de " << edad << " años." << endl; return 0; }
<code>
1 respuestas
para escribir tu comentario
    Javier Ayala

    Javier Ayala

    studenthace 2 años

    No se que exactamente lo que hace tu código escrito de esa manera aun, pero en clase en la universidad nos explicaron que cin tiene el problema de permitirte introducir contenido malicioso ya que no lo verifica, es decir, puedes esperar un numero, pero el usuario podría meterte una cadena con código malicioso, o podrías esperar un carácter, pero el usuario podría desbordar la memoria con una cadena excesivamente larga y vulnerar el programa o el equipo donde esta corriendo, quizá a eso se refería tu profesor.

Curso de C++ [Empieza Gratis]

Curso de C++ [Empieza Gratis]

Explora el polimorfismo en C++ creando y manipulando objetos que heredan de clases base. Aprende a implementar constructores, usar apuntadores y construir jerarquías de clases efectivas. Ideal para quienes inician en C++.

Curso de C++ [Empieza Gratis]
Curso de C++ [Empieza Gratis]

Curso de C++ [Empieza Gratis]

Explora el polimorfismo en C++ creando y manipulando objetos que heredan de clases base. Aprende a implementar constructores, usar apuntadores y construir jerarquías de clases efectivas. Ideal para quienes inician en C++.