初夏浅梦i 2020-06-06 00:04 采纳率: 60%
浏览 130
已采纳

请问大佬们,为什么这段代码存不进去数组里

void oneaccount::showlogin()
{
    int len = 3;
    string cinname;
    string cinpassword1;
    string cinpassword2;
    while (1)
    {
        cout << "请设置您的ID:" << endl;
        cin >> cinname;
        cout << "请设置您的密码:" << endl;
        cin >> cinpassword1;
        cout << "请再次确认您的密码:"<<endl;
        cin >> cinpassword2;
        if (cinpassword1 != cinpassword2)
        {
            cout << "前后两次输入密码不一致,请重新设置密码:" << endl;
            continue;
        }
        else if (cinpassword1 == cinpassword2)
        {
            accpass[len]._name = cinname;
            accpass[len]._password = cinpassword1;
            cout << "注册成功!" << endl;
            len++;
            break;
        }
        else
        {
            cout << "出现未知错误!!" << endl;
            break;
        }
    }
}

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-06-06 09:53
    关注

    accpass
    在哪里定义的,长度是不是>len+1
    否则越界。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 MPLS/VPN实验中MPLS的配置问题
  • ¥15 materialstudio氢键计算问题
  • ¥15 已知隐函数其中一个变量的,求另外一个变量
  • ¥15 echarts图表制作
  • ¥15 halcon根据玻璃面板纹路取区域
  • ¥15 HFSS设计小型化180度耦合器
  • ¥15 使用CInternetSession,CHttpFile读取网页文件时有些电脑上会卡住怎么办?
  • ¥15 水下机器人的半物理仿真研究
  • ¥15 微服务假死,一段时间后自动恢复,如何排查处理
  • ¥50 webrtc-streamer TCP rtsp