我对 Arduino 编程很陌生,但我已经掌握了窍门。我有相当强大的 PHP 和 Javascript 背景,所以这就是我的来历。
我一直在做一个带有 LCD 触摸屏的项目,我希望其他开发人员可以根据他们的需要定制按钮网格。有一个数组,开发人员可以自由地添加项目,并动态添加额外的按钮页面。单击一个只需将该按钮的索引发送给接收器。
现在我想让一些按钮“粘”起来,这样它们就会一直打开直到关闭。我的想法是设置一个简单的布尔数组,如下所示:
boolean stickyTriggers[1] = 1;
boolean stickyTriggers[2] = 0;
boolean stickyTriggers[3] = 0;
boolean stickyTriggers[9] = 1;
我期望的是按钮 1、2、3 和 9 是粘性的,而按钮 1 和 9 默认是“打开”的。我想当我渲染按钮时,我可以简单地说:
if (stickyTriggers[i]) {
// highlight button
}
我在编译时遇到的错误是:
array must be initialized with a brace-enclosed initializer
我有点意识到我在这里重新声明了 3 次变量,但是我尝试了其他方法并得到了其他错误。
保存一个简单的标志数组的正确方法是什么?我希望能够查找一个键并获得一个真或假(或空),而不必对数组长度进行硬编码。我相信这一切都是可能的,但有没有简单的方法?
谢谢
澄清:这里的关键是触发器 4-8 根本不在stickyTriggers 数组中,因为它们不是粘性的。正如标题所示,我希望能够跳过索引,或使用任意 ID 作为键。大多数答案都忽略了这一点。