#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <string>
void register_1();
void read(std::string login, std::string password);
void login();
struct Users {
std::string login;
std::string password;
}users[100];
int main() {
setlocale(LC_ALL, "RUS");
std::cout << "1. Пройти регистрацию \n";
std::cout << "2. Выполнить вход в систему \n";
int a;
std::cin >> a;
switch (a) {
case 1: register_1();
case 2: login();
}
return 0;
}
void register_1() {
std::string login, password;
std::cout << "Введите логин:" << std::endl;
std::cin >> login;
std::cout << "Введите пароль:" << std::endl;
std::cin >> password;
std::ofstream fout("users.txt", std::ios::app);
fout << login << " " << password << std::endl;
std::cout << "Регистрация прошла успешно!" << std::endl;
main();
}
void read(std::string login, std::string password) {
std::ifstream fin("users.txt");
for (int i = 0; i<100; i++) {
fin >> users[i].login >> users[i].password;
}
}
void login() {
std::string login, password;
std::cout << "Введите логин:" << std::endl;
std::cin >> login;
std::cout << "Введите пароль:" << std::endl;
std::cin >> password;
read(login, password);
bool flag = true;
for (int i = 0; i < 100; i++) {
if (login == users[i].login && password == users[i].password) {
std::cout << "Вы успешно вошли!" << std::endl;
flag = false;
break;
}
}
if (flag == true) {
std::cout << "Пароль либо логин введены неверно!" << std::endl;
}
system("pause");
main();
}
при компиляции выдаёт такие ошибки:
Ошибка (активно) E0077 это объявление не содержит класс хранения или спецификатор типа ConsoleApplication1 f:\cours1\ConsoleApplication1\ConsoleApplication1\ConsoleApplication1.cpp 66
и
Ошибка C1004 непредвиденное обнаружение конца файла ConsoleApplication1 f:\cours1\consoleapplication1\consoleapplication1\consoleapplication1.cpp 67
не могу понять от куда эти ошибки, 66 строка выглядит так - } (самая последняя закрывающая скобка), а 67 вообще отсутствует, даже пробела там нет.
У вас после последней скобки, похоже, затесался указатель кодировки UTF-8 - EF BB BF. Только и всего. Проверьте сами - он даже у вас здесь, в вашем коде наличествует...
Но мне ужасно интересно другое - что за вызов main() в login() - что бы это значило?
Сборка персонального компьютера от Artline: умный выбор для современных пользователей