I have a variable tweet
that is a string and it has a character at the very beginning that I want to clip off.
So what I want to do is use strstr()
to remove it. Here's my code:
tweet = strstr(tweet, "]");
However, I get this error:
cannot convert 'String' to 'const char*' for argument '1' to
'char' strstr(const char*, const char*)
So my thought would be to convert tweet
into a char. How would I go about doing so?
I realize this is an old question, but if you're trying to, say, compare a specific char, and not just one letter in a string, then what you want is string.charAt(n). For example, if you're doing serial programming and you need to check for STX (\02) than you can use the following code.
Using the following statement
tweet.c_str()
will return the string buffer, which will allow you to perform the edit you want.you can do that easier. Since you're using C++:
substr() returns a part of the string back to you, as string. The parameter is the starting point of this sub string. Since string index is 0-based, 1 should clip off the first character.
If you want to use strstr you can just cast tweet into a c-string:
However, that's pretty inefficient since it returns a c-string which has to be turned into a std::string against in order to fit into tweet.
How about you use
substring
instead. This will be less confusing than converting between different types of string.http://arduino.cc/en/Reference/StringSubstring
string
has ac_str()
member function that returnsconst char *
.Look at:
Parameters
See this page