You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Arduino中String数组声明及身份验证字符串匹配问题求助

Arduino中String数组声明及身份验证字符串匹配问题求助

大家好,我正在为我的工程学校做一个项目,目标是编程让Arduino操作一个保险箱。

这个认证系统的逻辑是:按下对应密码的一系列按键,输入的密码会和预设表格里的内容进行比对。我原本打算把数组声明成String类型,因为密码需要和字符串做比较,但自从把类型从int改成String后,直接炸出一堆错误。换成char类型的话倒是没报错,但新问题来了——用它和按键输入的密码比对时,只会比较数组元素的第一个字符,根本没法完成完整的密码验证。

下面是我涉及到的相关函数代码:

String code[15] = {"0001","0010","0011","0100","0101","0110","0111","1000","1001","1010","1011","1100","1101","1110","1111"};

char niveau[15] = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O'};

bool MA5()
{
    char Lettre; // Déclarer les variables
    String ID;

    Serial.println("Entré votre lettre :");
    while (!Serial.available())
    {
    } // Entrée de la lettre de l'agent
    Lettre = Serial.read(); // Affectation
    Serial.println(Lettre);

    Serial.println("Entré Votre code par le biais des boutons poussoirs, vous avez 10 secondes");
    ID = entrer_code();

    for (int i = 0; i < 15; i++)
    { // Vérification de l'association lettre-ID dans le dictionnaire
        if (niveau[i] == Lettre)
        {
            Serial.println(code[i]);
            if (String(code[i]) == ID)
            {
                return true; // Association correcte
            }
        }
    }
    return false;
}

备注:内容来源于stack exchange,提问作者Gabriel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 08:48:07