鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 147380124

[已解决]c++友元类成员变量问题

[复制链接]
 楼主| 发表于 2021-6-19 22:52:49 | 显示全部楼层
人造人 发表于 2021-6-19 22:47
先选 1 进行添加?
选了 1,然后呢?编号也选 1 ?
我要 你输入的每一步,直到出现错误

然后如果说在message类的第一行加一个cou<<w[i].name<<endl;输出的就是烫烫烫,但是在姓名查找函数里面添加cout<<w[i].name<<endl;输出的就是张三
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:05:45 | 显示全部楼层
147380124 发表于 2021-6-19 22:52
然后如果说在message类的第一行加一个cou

这个问题好像是解决了,下一个有问题的输入是?
#include <iostream>
#include <cstring>

using namespace std;


void menu()//定义菜单函数
{
    cout << endl;
    cout << "---------------------------人事档案管理系统---------------------------" << endl << endl;
    cout << "\t\t\t 1:添加职员具体信息" << endl;
    cout << "\t\t\t 2:按姓名查找职员信息" << endl;
    cout << "\t\t\t 3:按编号查找职员信息" << endl;
    cout << "\t\t\t 4:按姓名删除职员信息" << endl;
    cout << "\t\t\t 5:按编号删除职员信息" << endl;
    cout << "\t\t\t 6:显示人事管理系统中所有职员信息" << endl;
    cout << "\t\t\t 7:清空人事管理系统中所有职员信息" << endl;
    cout << "\t\t\t 8:统计人事管理系统中的职员总数" << endl;
    cout << "\t\t\t 0:退出人事档案管理系统" << endl;
    cout << "**********************************************************************" << endl;
}

class Person {//普通人
public:
    char name[30];
    char sex[20];
    char age[20];


};

//职工职位
class PersonPosition :virtual public Person {//Person为虚基类
public:
    char position[20];//职位
    PersonPosition() {
        //Null
    }
    ~PersonPosition() {
        //Null
    }
};

//操作时间
class OperationTime :virtual public Person {//Person为虚基类
public:
    char engage_time[100];//聘用时间
    char add_time[100];//记录时间
    OperationTime() {
        //Null
    }
    ~OperationTime() {
        //Null
    }
};

//职工基本信息
class Worker :public PersonPosition, public OperationTime {//继承PersonPosition、OperationTime类,多重继承。
private:
    char num[20];//编号
    char address[500];//地址
    char tel[100];//手机号
    char nation[30];//民族
    char political_status[20];//政治面貌
    char marital_status[20];//婚姻状况
    char school[200];//毕业院校
    char identity[500];//身份证号
    char email[20];//邮箱

    friend class message;//友元类message

    Worker() {
        //Null
    }
    ~Worker() {
        //Null
    }
    friend class Staffoperation;//定义友元操作类

};

//操作函数
class Staffoperation :public PersonPosition, public OperationTime {//多重继承
private:
    Worker w[101];//100为员工最多数量
    int Num;//用于表示记录时员工的序号
    int all;//用于表示系统含有多少名员工

public:
    Staffoperation() {
        Num = 1;
        all = 0;
    }
    virtual void show() {
        //Null
        //定义虚函数show,供message类调用
    }

    void add_person();//添加员工具体信息
    void searchname();//按姓名查找
    void searchnum();//按编号查找
    void delname();//按姓名删除
    void delnum();//按编号删除
    void showall();//显示人事管理系统中所有员工信息
    void delall();//清空人事管理系统中所有员工信息
    void total();//统计人事管理系统中的员工总数

    friend class message;//定义友元类

};

//message类用于重载运算符
class message:public Staffoperation,public Worker {
private:
    char name_m[32];
    char sex_m[22];
    char age_m[22];
    char num_m[22];//编号
    char address_m[502];//地址
    char tel_m[102];//手机号
    char nation_m[32];//民族
    char political_status_m[22];//政治面貌
    char marital_status_m[22];//婚姻状况
    char school_m[202];//毕业院校
    char identity_m[502];//身份证号
    char email_m[22];//邮箱
    char position_m[22];//职位
    char engage_time_m[102];//聘用时间
    char add_time_m[102];//记录时间
public:
    message(int i) {
        cout << w[i].name << endl;
        /*
        strcpy_s(name_m, strlen(w[i].name) + 1,w[i].name);
        strcpy_s(sex_m, strlen(w[i].sex) + 1, w[i].sex);
        strcpy_s(age_m, strlen(w[i].age) + 1, w[i].age);
        strcpy_s(num_m, strlen(w[i].num) + 1, w[i].num);
        strcpy_s(address_m, strlen(w[i].name) + 1, w[i].name);
        strcpy_s(tel_m, strlen(w[i].tel) + 1, w[i].tel);
        strcpy_s(nation_m, strlen(w[i].nation) + 1, w[i].nation);
        strcpy_s(political_status_m, strlen(w[i].political_status) + 1, w[i].political_status);
        strcpy_s(marital_status_m, strlen(w[i].marital_status) + 1, w[i].marital_status);
        strcpy_s(school_m, strlen(w[i].school) + 1, w[i].school);
        strcpy_s(identity_m, strlen(w[i].identity) + 1, w[i].identity);
        strcpy_s(email_m, strlen(w[i].email) + 1, w[i].email);
        strcpy_s(position_m, strlen(w[i].position) + 1, w[i].position);
        strcpy_s(engage_time_m, strlen(w[i].engage_time) + 1, w[i].engage_time);
        strcpy_s(add_time_m, strlen(w[i].add_time) + 1, w[i].add_time);
        */
        strcpy(name_m, w[i].name);




        strcpy(name, w[i].name);




        strcpy(sex_m, w[i].sex);
        strcpy(age_m, w[i].age);
        strcpy(num_m, w[i].num);
        strcpy(address_m, w[i].name);
        strcpy(tel_m, w[i].tel);
        strcpy(nation_m, w[i].nation);
        strcpy(political_status_m, w[i].political_status);
        strcpy(marital_status_m, w[i].marital_status);
        strcpy(school_m, w[i].school);
        strcpy(identity_m, w[i].identity);
        strcpy(email_m, w[i].email);
        strcpy(position_m, w[i].position);
        strcpy(engage_time_m, w[i].engage_time);
        strcpy(add_time_m, w[i].add_time);
    }
    //拷贝构造函数
    message(const message& me) {
        /*
        strcpy_s(name_m, strlen(me.name_m) + 1, me.name_m);
        strcpy_s(sex_m, strlen(me.sex_m) + 1, me.sex_m);
        strcpy_s(age_m, strlen(me.age_m) + 1, me.age_m);
        strcpy_s(num_m, strlen(me.num_m) + 1, me.num_m);
        strcpy_s(address_m, strlen(me.name_m) + 1, me.name_m);
        strcpy_s(tel_m, strlen(me.tel_m) + 1, me.tel_m);
        strcpy_s(nation_m, strlen(me.nation_m) + 1, me.nation_m);
        strcpy_s(political_status_m, strlen(me.political_status_m) + 1, me.political_status_m);
        strcpy_s(marital_status_m, strlen(me.marital_status_m) + 1, me.marital_status_m);
        strcpy_s(school_m, strlen(me.school_m) + 1, me.school_m);
        strcpy_s(identity_m, strlen(me.identity_m) + 1, me.identity_m);
        strcpy_s(email_m, strlen(me.email_m) + 1, me.email_m);
        strcpy_s(position_m, strlen(me.position_m) + 1, me.position_m);
        strcpy_s(engage_time_m, strlen(me.engage_time_m) + 1, me.engage_time_m);
        strcpy_s(add_time_m, strlen(me.add_time_m) + 1, me.add_time_m);
        */
        strcpy(name_m, me.name_m);
        strcpy(sex_m, me.sex_m);
        strcpy(age_m, me.age_m);
        strcpy(num_m, me.num_m);
        strcpy(address_m, me.name_m);
        strcpy(tel_m, me.tel_m);
        strcpy(nation_m, me.nation_m);
        strcpy(political_status_m, me.political_status_m);
        strcpy(marital_status_m, me.marital_status_m);
        strcpy(school_m, me.school_m);
        strcpy(identity_m, me.identity_m);
        strcpy(email_m, me.email_m);
        strcpy(position_m, me.position_m);
        strcpy(engage_time_m, me.engage_time_m);
        strcpy(add_time_m, me.add_time_m);
    }
    friend ostream& operator<<(ostream& out, message& m);//重载运算符<<
    void show() {
        cout << *this;
    }
};

//重载运算符<<
ostream& operator<<(ostream& out, message& m) {
    out << " 编号:" << m.num_m << endl;
    out << " 姓名:" << m.name_m << endl;
    out << " 年龄:" << m.age_m << endl;
    out << " 性别:" << m.sex_m << endl;
    out << " 地址:" << m.address_m << endl;
    out << " 手机号:" << m.tel_m << endl;
    out << " 国家:" << m.nation_m << endl;
    out << " 政治面貌:" << m.political_status_m << endl;
    out << " 婚姻状况:" << m.marital_status_m << endl;
    out << " 毕业院校:" << m.school_m << endl;
    out << " 身份证号:" << m.identity_m << endl;
    out << " 邮箱:" << m.email_m << endl;
    out << " 聘用时间:" << m.engage_time_m << endl;
    out << " 记录时间:" << m.add_time_m << endl;
    return out;
}

//密码系统(如需使用管理系统,需要输入正确的密码,若连续三次密码错误,则系统推出)
void password()
{

    int password;
    int j = 1;
    cout << "欲使用本系统,请输入本系统的密码:" << endl;
    cin >> password;
    while (password != 888 && j < 3)
    {
        try {//应用异常出来来验证密码 
            if (password != 888)
                throw - 1; //抛出int类型异常

        }

        catch (int e) {
            cout << "您输入的密码有误,请再次输入: " << endl;
            j++;
            cin >> password;
        }

    }
    if (password != 888 && j >= 3)
    {
        cout << "您连续三次输入密码有误,系统自动退出" << endl;
        exit(0);
    }
    else {
        cout << endl << "欢迎进入人事档案管理系统\n请根据系统功能列表选择相应的功能(请输入选项对应的数字) " << endl;
    }
}

//添加员工具体信息
void Staffoperation::add_person() {
    string choice = "Y";
    char num1[20];
    while (choice == "Y" || choice == "y")
    {
        cout << "-----新建人事档案职员信息----" << endl;
        cout << "请输入职员的的编号:(1 - 100) " << endl;
        cin >> num1;
        for (int x = 0; x <= all; x++)//判断是否有重复的编号
        {
            while (strcmp(w[x].num, num1) == 0)
            {
                cout << "此职工编号已存在,请重新输入:" << endl;
                cout << "请输入职员的的编号:(1 - 100) " << endl;
                cin >> num1;
                x = 0;
            }
        }
        //strcpy_s(w[Num].num, num1);
        strcpy(w[Num].num, num1);
        cout << "请输入职员姓名:" << endl;
        cin >> w[Num].name;
        //cout << "请输入性别:" << endl;
        //cin >> w[Num].sex;
        //while (strcmp(w[Num].sex,"男")!=0 && strcmp(w[Num].sex, "女") != 0)
        //{
        //    cout << "您输入的性别有误,请核对后再输入: " << endl;
        //    cin >> w[Num].sex;
        //}
        //cout << "请输入年龄:" << endl;
        //cin >> w[Num].age;
        //cout << "请输入该职员的职位:(经理,管理员,员工) " << endl;
        //cin >> w[Num].position;
        //while ((string)w[Num].position != "经理" && (string)w[Num].position != "管理员" && (string)w[Num].position != "员工")
        //{
        //    cout << "您输入的职工职位有误,请核对后再输入: " << endl;
        //    cin >> w[Num].position;
        //}
        //cout << "请输入该职员的家庭地址: " << endl;
        //cin >> w[Num].address;
        //cout << "请输入该职员的民族:" << endl;
        //cin >> w[Num].nation;
        //cout << "请输入职员的政治面貌:(群众,团员,党员)" << endl;
        //cin >> w[Num].political_status;
        //while ((string)w[Num].political_status != "群众" && (string)w[Num].political_status != "团员" && (string)w[Num].political_status != "党员")
        //{
        //    cout << "您输入的职工政治面貌有误,请核对后再输入: " << endl;
        //    cin >> w[Num].political_status;
        //}
        //cout << "请输入职员的婚姻状况(未婚,已婚)" << endl;
        //cin >> w[Num].marital_status;
        //while ((string)w[Num].marital_status != "未婚" && (string)w[Num].marital_status != "已婚")
        //{
        //    cout << "您输入的职工的婚姻状况有误,请核对后再输入: " << endl;
        //    cin >> w[Num].marital_status;
        //}
        //cout << "请输入职员的毕业学校: " << endl;
        //cin >> w[Num].school;
        //cout << "请输入职员的身份证号:" << endl;
        //cin >> w[Num].identity;
        //cout << "请输入职员的手机号:" << endl;
        //cin >> w[Num].tel;
        //cout << "请输入职员的邮箱: " << endl;
        //cin >> w[Num].email;
        //cout << "请输人职员的聘用时间:" << endl;
        //cin >> w[Num].engage_time;
        //cout << "请输入此次记录的添加时间:" << endl;
        //cin >> w[Num].add_time;
        cout << "信息添加成功!" << endl;
        cout << "您还想继续添加吗?( y/n) " << endl;
        cin >> choice;
        while (choice != "Y" && choice != "y" && choice != "N" && choice != "n")
        {
            cout << "请按要求键入(y/n) " << endl;
            cin >> choice;
        }
        if (choice == "N" || choice == "n")
        {
            Num++;
            all++;
            break;
        }
        Num++;
        all++;
    }
}

//按姓名查找
void Staffoperation::searchname() {
    if (all == 0) {
        cout << "目前还没有员工计入系统,即将返回主菜单....." << endl;
        menu();
    }
    else {
        char name1[30];
        int flag = 0;//查询成功标志
        cout << "请输入你想要查询的姓名:" << endl;
        cin >> name1;
        for (int i = 0; i < 100; i++) {
            if (strcmp(name1, w[i].name) == 0) {
                cout << "查询成功!该员工的信息如下: " << endl;
                int l = i;
                message A(l);
                //cout << A.name << endl;
                cout << w[i].name << endl;
                //message B(A);//调用拷贝构造函数
                //B.show();
                flag = 1;
                break;
            }
        }
        if (flag == 0) {
            cout << "查询失败!系统中没有此人信息!即将返回主菜单....." << endl;
        }
    }
}

//按编号查找
void Staffoperation::searchnum() {
    if (all == 0) {
        cout << "目前还没有员工计入系统,即将返回主菜单....." << endl;
        menu();
    }
    else {
        char num1[20];
        int flag = 0;//查询成功标志
        cout << "请输入你想要查询的编号:" << endl;
        cin >> num1;
        for (int i = 0; i < 100; i++) {
            if (strcmp(w[i].num, num1) == 0) {
                cout << "查询成功!该员工的信息如下: " << endl;
                message A(i);
                //message B(A);//调用拷贝构造函数
                /*               B.show();*/
                flag = 1;
                break;
            }
        }
        if (flag == 0) {
            cout << "查询失败!系统中没有此人信息!即将返回主菜单....." << endl;
        }
    }
}

//按姓名删除
void Staffoperation::delname() {
    if (all == 0) {
        cout << "目前还没有员工计入系统!" << endl;
    }
    char name2[30];
    cout << "请输入你想要删除的员工姓名:" << endl;
    cin >> name2;
    int flag = 0;//删除标志
    for (int i = 0; i < 100; i++) {
        if (strcmp(name2, w[i].name) == 0) {
            cout << "你想要删除的员工的信息如下: " << endl;
            message A(i);
            //message B(A);//调用拷贝构造函数
            //B.show();
            flag = 1;
            break;
        }
    }
    if (flag == 0) {
        cout << "系统中没有此人信息!" << endl;
    }
    cout << "确认删除请输入Y,返回主菜单请输入N " << endl;
    string p;
    int j = 0;
    cin >> p;
    while (1)
    {
        if (p == "y" || p == "Y")
        {
            for (int i = 0; i < 100; i++) {
                if (strcmp(name2, w[i].name) == 0) {
                    j = i;
                }
            }
            for (; j <= 99; j++) {
                w[j] = w[j + 1];
            }
            all--;
            cout << "员工信息已删除!" << endl;
            break;
        }
        else if (p == "n" || p == "N")
        {
            menu();
            break;
        }
        else
        {
            cout << "输入有误,请重新输入:";
            cin >> p;
        }
    }

}

//按编号删除
void Staffoperation::delnum() {
    if (all == 0) {
        cout << "目前还没有员工计入系统!." << endl;
    }
    char num2[20];
    cout << "请输入你想要删除的员工编号:" << endl;
    cin >> num2;
    int flag = 0;//删除标志
    for (int i = 0; i < 100; i++) {
        if (strcmp(w[i].num, num2) == 0) {
            cout << "你想要删除的员工的信息如下: " << endl;
            message A(i);
            //message B(A);//调用拷贝构造函数
            //B.show();
            flag = 1;
            break;
        }
    }
    if (flag == 0) {
        cout << "系统中没有此人信息!" << endl;
    }
    cout << "确认删除请输入Y,返回主菜单请输入N " << endl;
    string p;
    int j;
    cin >> p;
    while (1)
    {
        if (p == "y" || p == "Y")
        {
            for (int i = 0; i < 100; i++) {
                if (strcmp(w[i].num, num2) == 0) {
                    j = i;
                }
            }
            for (; j <= 99; j++) {
                w[j] = w[j + 1];
            }
            all--;
            cout << "员工信息已删除!" << endl;
            break;
        }
        else if (p == "n" || p == "N")
        {
            menu();
            break;
        }
        else
        {
            cout << "输入有误,请重新输入:";
            cin >> p;
        }
    }

}

//显示人事管理系统中所有员工信息
void Staffoperation::showall() {
    if (all == 0) {
        cout << "信息库为空,请添加职员!" << endl;
        menu();
    }
    else {
        cout << "所有员工的信息如下: " << endl;
        for (int i = 1; i <= all; i++) {
            message A(i);
            //message B(A);//调用拷贝构造函数
            //B.show();
        }
        ///////////////////////////////////////////
    }
}

//清空人事管理系统中所有员工信息
void Staffoperation::delall() {
    for (int x = 1; x <= all; x++) {
        w[x] = w[0];
    }
    all = 0;
    Num = 1;
    cout << "数据已清空!" << endl;
}

//统计人事管理系统中的员工总数
void Staffoperation::total() {
    cout << "系统中一共有:" << all << "名职工的信息。" << endl;
}

//定义控制函数
void manage()
{
    Staffoperation per;
    int choice, k = 1;
    menu();
    cout << "请根据系统功能列表选择相应的功能(请输入选项对应的数字)" << endl;
    //password();
    while (k)
    {
        cin >> choice;
        switch (choice)
        {
            case 1:
                per.add_person();//调用增加人事档案中职员信息函数
                break;
            case 2:
                per.searchname();//调用按姓名查找职工信息函数
                break;
            case 3:
                per.searchnum();//调用按编号查找职工信息函数
                break;
            case 4:
                per.delname();//调用按姓名删除职工信息函数
                break;
            case 5:
                per.delnum();//调用按编号删除职工信息函数
                break;
            case 6:
                per.showall();//调用显示人事档案管理系统中所有职员信息的函数
                break;
            case 7:
                per.delall();//调用清空人事档案管理系统中所有数据的函数
                break;
            case 8:
                per.total();//调用输出人事档案管理系统中职员数的函数
                break;
            case 0:
                cout << endl << "即将退出人事档案管理系统,再见!" << endl << endl;
                k = 0;
                break;
            default:
                cout << "您输入的选项有错,请重新选择! ";
        }
        if (k != 0)
        {
            menu();
            cout << "请根据系统功能列表选择相应的功能(请输入选项对应的数字)" << endl;
        }
    }
}

int main()
{
    manage();

    return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:20:22 | 显示全部楼层
人造人 发表于 2021-6-19 23:05
这个问题好像是解决了,下一个有问题的输入是?

他这个vs就很奇怪,他不让我用strcpy
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:20:54 | 显示全部楼层
147380124 发表于 2021-6-19 23:20
他这个vs就很奇怪,他不让我用strcpy

你怎么知道不让用?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:22:44 | 显示全部楼层
人造人 发表于 2021-6-19 23:20
你怎么知道不让用?

我用你这个代码,他下面就报错,说strcpy不安全,要改为strcpy_s
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:23:38 | 显示全部楼层
147380124 发表于 2021-6-19 23:22
我用你这个代码,他下面就报错,说strcpy不安全,要改为strcpy_s

我看不到报错信息呀,你应该让我看到你看到的东西
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:25:45 | 显示全部楼层
人造人 发表于 2021-6-19 23:23
我看不到报错信息呀,你应该让我看到你看到的东西

QQ截图20210619232458.png 大佬你看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:28:20 | 显示全部楼层

看不懂英文没关系,随便拿个翻译软件翻译一下
1.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:29:19 | 显示全部楼层
在文件的最前面添加这个
#define _CRT_SECURE_NO_WARNINGS
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:29:36 | 显示全部楼层
人造人 发表于 2021-6-19 23:28
看不懂英文没关系,随便拿个翻译软件翻译一下

我加入了这个,然后就出现了异常 QQ截图20210619232842.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:30:53 | 显示全部楼层
147380124 发表于 2021-6-19 23:29
我加入了这个,然后就出现了异常

你输入了什么?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:39:02 | 显示全部楼层

就是和刚刚一样的输入,查询就报错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:40:05 | 显示全部楼层

就是选择1添加,编号1,姓名张三,然后n退出,选2按姓名查询,再输入张三,然后就异常了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:43:09 | 显示全部楼层
147380124 发表于 2021-6-19 23:29
我加入了这个,然后就出现了异常

这是下一个问题了吧?我发给你的代码没有这一行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:44:19 | 显示全部楼层
好吧,看错位置了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:45:48 | 显示全部楼层
人造人 发表于 2021-6-19 23:43
这是下一个问题了吧?我发给你的代码没有这一行

1.png
就是在按姓名查找这里,没关系大佬,这么晚了,大佬你早点休息,我明天再研究研究,劳烦大佬了! 非常感谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:50:16 | 显示全部楼层
人造人 发表于 2021-6-19 23:44
好吧,看错位置了

我感觉最主要的问题就是在message里面输出是烫烫烫,在姓名查找里面不是,才导致了message里面数组越界,但我网上方法试遍了都没用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:51:59 | 显示全部楼层
147380124 发表于 2021-6-19 23:50
我感觉最主要的问题就是在message里面输出是烫烫烫,在姓名查找里面不是,才导致了message里面数组越界, ...

这我就没办法了,我这边 dev++ 和 archlinux 的 gcc 都没问题
估计是你的vs问题了,你可以试试 dev++
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-19 23:52:29 | 显示全部楼层
147380124 发表于 2021-6-19 23:50
我感觉最主要的问题就是在message里面输出是烫烫烫,在姓名查找里面不是,才导致了message里面数组越界, ...

你确定是我发给你的这个代码?你直接复制的这个代码?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-19 23:53:24 | 显示全部楼层
人造人 发表于 2021-6-19 23:52
你确定是我发给你的这个代码?你直接复制的这个代码?

对呀,没关系大佬,明天我再弄弄,你早点休息吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 14:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表