关于#c++#的问题,请各位专家解答!


c++


void code(account* x,char a[6], char b[6])
{
    int ch = 0;
    char  code1[6]{}, code2[6]{}, n;
    cout << "密码:请输入6位数字密码:\n";
    for (n = 0; n < 6;)
    {
        ch = _getch();//输入字符
        if (ch != '\r') {
            code1[n++] = ch;
            printf("*");
        }
    }
    cout << "\n确认密码:请再次输入6位数字密码:\n";

    for (n = 0; n < 6;)
    {
        ch = _getch();//输入字符

        if (ch != '\r') {
            code2[n++] = ch;
            printf("*");
        }
        else {
            break;
        }
    }


    if (strcmp(code1, code2) == 0)
    {
        cout << "\n确认开户\n";
        x[i].code = atoi(code1);
    }
    else
        cout << "\n两次密码不一致,未成功开户!\n";
    }

`为何ATM机的密码板块 核对两次密码这里不行 一直说密码错误

总是说密码不一样

这么改,供参考:

void code(account* x, char a[6], char b[6])
{
    int ch = 0;
    char  code1[7]{}, code2[7]{}, n;    // 修改
    cout << "密码:请输入6位数字密码:\n";
    for (n = 0; n < 6;)
    {
        ch = _getch();//输入字符
        if (ch != '\r') {
            code1[n++] = ch;
            printf("*");
        }
    }
    code1[n] = '\0';     // 修改
    cout << "\n确认密码:请再次输入6位数字密码:\n";

    for (n = 0; n < 6;)
    {
        ch = _getch();//输入字符

        if (ch != '\r') {
            code2[n++] = ch;
            printf("*");
        }
        else {
            break;
        }
    }
    code2[n] = '\0';    // 修改

    if (strcmp(code1, code2) == 0)
    {
        cout << "\n确认开户\n";
        x[i].code = atoi(code1);
    }
    else
        cout << "\n两次密码不一致,未成功开户!\n";
}

//`为何ATM机的密码板块 核对两次密码这里不行 一直说密码错误


  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7631960
  • 这篇博客你也可以参考下:怎么用c++写一个自己的头文件?
  • 除此之外, 这篇博客: 一篇文章带你初识C++中的 命名空间的使用 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 命名空间的使用有三种方式:
    加命名空间名称及作用域限定符
    使用using将命名空间中成员引入
    使用using namespace

    //1.使用命名空间名称及作用域限定符
    int main()
    {
    	 printf("%d\n", N::a);
     	 return 0; 
    }
    //2.使用using将命名空间中成员引入
    using N::b;
    int main()
    {
     	printf("%d\n", N::a);
     	printf("%d\n", b);
     	return 0; 
    }
    //3.使用using namespace 
    using namespce N;
    int main()
    { 
    	printf("%d\n", N::a); 
    	printf("%d\n", b); 
    	Add(10, 20);
        return 0;
     }
    

    在C++中我们开头总是写using namespace std; 很多人压根不知道这句话的意思,这里的std就是命名空间,当然这句话的意思就是使用标准命名空间

  • 您还可以看一下 张立铜老师的C++入门基础精讲视频课程中的 数组的介绍小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    对于C++的基础语法,建议可以参考相关C++教材逐步学习和掌握。

    对于数据类型,C++中的基本数据类型有int、char、double等,在使用时需要注意类型转换问题。此外,C++还有结构体和类这两种自定义数据类型,可以根据自己的需求进行使用。

    对于常见的编程技巧,以下是一些常见的技巧:

    1. 函数的定义和调用,使用函数可以封装代码,提高代码的复用性和可维护性;

    2. 条件语句和循环语句的使用,可以实现根据不同的条件执行不同的代码,或者重复执行一段代码;

    3. 数组的使用,可以存储相同数据类型的一组数据,通过下标访问数组元素;

    4. 结构体的使用,可以自定义数据类型,用于存储一组相关的数据;

    5. 指针的使用,可以实现对内存地址的访问和操作,需要注意指针的类型和指针所指向的内存空间;

    可以参考以上技巧,对具体的问题进行思考和解决。如果遇到不懂的地方,也可以通过查阅资料或者请教他人解决。