更改数组索引处的变量,而不是实际的列表

Change variable at array index, not the actual list

本文关键字:列表 变量 数组 索引      更新时间:2023-10-16

在我的代码中有以下内容:

_buttonStates[0] = _upButtonState; _buttonStates[1] = _leftButtonState;

是否有办法做到这一点:

buttonStates[0] = true;

改变变量_upButtonStates,而不是将其替换为值'true'?

我正在做以下事情:

  for(int i = 0; i < sizeof(_buttons)/sizeof(_buttons[0]); i++){
     if(_buttonStates[i] != digitalRead(_buttons[i])){
        _stateChanged[i] = true;
        _buttonStates[i] = digitalRead(_buttons[i]);
     }
     else{
        _stateChanged[i] = false;
     }

但是后来对'_upButtonState'的引用最终都过时了。

我如何改变列表中变量的值,而不是在通过索引访问它时覆盖它?

您现在正在传递文字值;您需要将指针(变量的内存地址)存储在数组中。
示例