I have a 3 position switch (pinA, pinB, and pinC, of which only 1 will be high at once) and I want to use it to select a value from an array. Would this code work as I think it would? I'm not super used to typing having come from mainly coding in MATLAB.
Mode = digitalRead(pinB) + digitalRead(pinC) * 2;
value = Values[Mode];
As you see, you only need two pins 
But yes, but it's a bit ugly.
byte mode = digitalRead(SwitchPins[0]) || digitalRead(SwitchPins[1]) << 1;
With SwitchPins the pins of the switch. But because they are similar, arrays, always arrays 
Right! totally don't even need to connect up a pinA if the absence of signal to B or C implies A. Thanks for that advice!