


Вопрос по c++

Вот написал код, создал 2 переменные login и password, и прошу пользователя заполнить их. Типо написать свой логин и пароль

После запуска мне дает написать логин, но не дает написать пароль. Пишу логин, нажимаю enter и у меня моментально пишет "аккаунт создан", хоть я должен вводить свой пароль. Почему прога скипает это? Я ведь все также как и сверху написал
В вашем коде проблема заключается в том, что вы используете тип `int` для переменных `login` и `password`. Это приводит к тому, что программа ожидает целочисленные значения и не позволяет ввести строку, как это требуется для логина и пароля.
Для исправления кода, необходимо использовать тип `std::string`. Вот исправленный вариант вашего кода:
#include <iostream>
#include <string>
int main() {
setlocale(LC_ALL, "RU");
std::string login, password;
std::cout << "Создание аккаунта" << std::endl;
std::cout << "Введите логин: ";
std::cin >> login;
std::cout << "Придумайте пароль: ";
std::cin >> password;
std::cout << std::endl << "Аккаунт успешно создан!" << std::endl;
return 0;
}
Строки надо объявлять строками, а не числами.
Построчный ввод лучше делать не через >>, а через getline.
Но если хочешь именно >>, то очищать буфер ввода после получения строки.
https://ru.stackoverflow.com/questions/562229/Очистка-буфера-ввода-cin