title: How can I compare __FlashStringHelper* with char* on Arduino?
body: <p>I have a board that outputs lines of text to serial.  I need to compare these lines of text with ones I know.  Essentially, I'd like to do <code>strcmp(thestring,F("knownstring"))</code>, however there doesn't seem to be a version of strcmp that takes the FlashStringHelper* type.  There is strcmp_P that uses <code>const PROGMEM char *</code>, but that appears to be a different thing entirely.  Someone on an Arduino forum thread I saw suggested writing one by going through the flash-string with <code>progmem_read_byte (b, i)</code>, but that function doesn't actually exist and the nearest equivalent (<code>pgm_read_byte(b+i)</code>) doesn't seem to work with FlashStringHelper* - I get errors like <code>error: invalid use of incomplete type 'class __FlashStringHelper'</code> and <code>error: forward declaration of 'class __FlashStringHelper'</code>, which imply I've done something <em>seriously</em> wrong!  I'm nearly at a point of giving up and putting the strings in RAM instead, but the arduino doesn't have much of that so I want to avoid that if possible.  Can anyone help?</p>