\arduino-0019\libraries\RemoteC\RemotC.cpp:10: error: prototype for 'void RemoteC::getCommand(byte**)' does not match any in class 'RemoteC'
\arduino-0019\libraries\RemoteC\/RemoteC.h:12: error: candidate is: void RemoteC::getCommand(byte*)
I think we need to see more of your code. It appears from the error message that the code snippet from the .cpp file is not what is actually in the .cpp file.
The error message says that you are defining a function that takes an array of pointers, while the function is declared to take a single pointer.
Perhaps, though, it is the sketch that is calling the function that is in error. How are you calling the function?
\arduino-0019\libraries\RemoteC\RemotC.cpp:10: error: prototype for 'void RemoteC::getCommand(byte**)' does not match any in class 'RemoteC'
\arduino-0019\libraries\RemoteC\/RemoteC.h:12: error: candidate is: void RemoteC::getCommand(byte*)
RemotC.cpp and RemoteC.h???
Edit: Nevermind, having problems replicating the issue even with different filenames.
\arduino-0019\libraries\RemoteC\RemoteC.cpp:10: error: prototype for 'void RemoteC::getCommand(byte**)' does not match any in class 'RemoteC'
\arduino-0019\libraries\RemoteC\/RemoteC.h:12: error: candidate is: void RemoteC::getCommand(byte*)
I have no way of checking this here; but
if
command[0] = 08h
command[1] = 10h
and you wanted the final command to be 0810h then you could use bit shifting.
Yes sir,
the command is the [0] and [1], the port is [2] and [3] and the value is [4][5][6].
example :
byte myCommand[] = {0,8,2,8,4,7,5};
getCommand(myCommand) will get me:
command = 08
port = 28
value = 475
Ok, you'll probably want to do something different then; or you'll have to use a word long instead of int for value (3 x bytes is too much for an int).
Try some base10 math
iCommand = ((int)command[0] * 10) + (int)command[1]
iValue = ((int)command[4] * 100) + ((int)command[5] * 10) + (int)command[6]
etc. etc.