2016-12-04 35 views
-3

好吧,所以我得到两个错误。C++注册和登录程序帮助需要

  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. Register\n2. Login\nYour 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"; 
     } 
    } 
+0

使用'std :: string'而不是'char []'。 '#include '不是标准的C++。你使用Turbo C++吗? –

+0

耶兄弟,我上面提到它:P –

+0

请[编辑]你的问题提供[mcve]。 –

回答

1

您不能对C风格字符串使用运算符'+'。

您将需要使用strcat()snprintf

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

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

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