проблема, когда я пытаюсь передать массив логических по ссылкам на Arduino - PullRequest
0 голосов
/ 13 октября 2018

Я использую Arduino и хочу передать параметр по ссылкам, чтобы мой параметр был массивом логического типа, например:

boolean isCodeHaveEnd(boolean (&code)) {
      boolean TCode[18] = { 1 , 1 , 1 , 1 , 1 ,1
                          , 0 , 1 , 0 , 0 , 0 , 0
                          , 0 , 1 , 0 , 0 , 0 , 0} ;
      boolean XCode[18] ;
      for (size_t i = 108; i < 125; i++) {
           XCode[i] = code[i] ;
      }
      return equal(TCode, XCode, 18) ;
 }

, что бы я ни пытался, я сталкиваюсь с той же ошибкой

src/main.cpp:109:33: error: invalid types 'boolean {aka bool}[size_t {aka unsigned int}]' for array subscript

XCode[i] = code[i] ;

1 Ответ

0 голосов
/ 13 октября 2018

проблема решена, просто нужно добавить const перед типом параметра следующим образом:

boolean isCodeHaveEnd(const boolean (&code)[126]) {
      boolean TCode[18] = { 1 , 1 , 1 , 1 , 1 ,1
                          , 0 , 1 , 0 , 0 , 0 , 0
                          , 0 , 1 , 0 , 0 , 0 , 0} ;
      boolean XCode[18] ;
      for (size_t i = 108; i < 125; i++) {
           XCode[i] = code[i] ;
      }
      return equal(TCode, XCode, 18) ;
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...