C 注册并登录程序帮助

c++ registration and sign in program help needed

本文关键字:程序 帮助 登录 注册      更新时间:2023-10-16

好吧,所以我遇到了两个错误。

  1. 无效的指针添加[在(用户名 "。txt"行)]
  2. 函数getline应该具有原型。

这是代码,我正在以形式进行注册/注册/登录。以后将添加更多功能,例如****格式密码和密码的限制。截至目前,我被困在这里,不知道该如何进行。此外,我被迫使用Turbo C 是因为学校)))。请为MacOSX建议一些好的编译器。谢谢!

    #include<iostream.h>
    #include<fstream.h>
    #include<conio.h>
    #include<stdio.h>
    #include<string.h>
    void register_user();
    void login_user();
    void main_menu();
    int IsLoggedIn()
    {
        char username[20],password[20],un[20],pw[20];
        cout<<"Enter Username: ";gets(username);
        cout<<"Enter Password: ";gets(password);
        ifstream read(username + ".txt");
        getline(un,read);
        getline(pw,read);
        if(un==username && pw==password)
        {
            return 1;
        }
        else
        {
            return 0;
        }
    }
    void main()
    {
        main_menu();
    }
    void main_menu()
    {
        int choice;
        cout<<"1. Registern2. LoginnYour Choice: "; cin>>choice;
        switch(choice)
        {
            case 1: register_user(); break;
            case 2: login_user(); break;
            default: break;
        }
    }
    void register_user()
    {
        char username[20], password1[20],password2[20];
        cout<<"Enter Username: ";gets(username);
        rev1:cout<<"Enter Password: ";gets(password1);
        cout<<"Enter Password again: ";gets(password2);
        while (password1!=password2)
        {
            goto rev1;
        }
        ofstream file;
        file.open(username + ".txt");
        file<<username<<endl<<password1;
        file.close();
    }
    void login_user()
    {
        int chk=IsLoggedIn();
        if(chk==1)
        {
            cout<<"Log in successfull!n";
        }
        else
        {
            cout<<"Log in unsucessfull!n";
        }
    }

您不能将操作员' '用于C风格字符串。

您将需要使用strcat()snprintf

另外,使用fscanffreadfgets读取字符数组。

您不能在C风格字符串(字符数组)上使用操作员==,使用strcmpoperator ==将比较指针中的值,而不是指向的文本。

如果您要使用C风格的字符串,我强烈建议您查看str*()功能家族。