如何获得字符串的第n个字符?
答
你会做:
char c = str[1];
甚至:
char c = "Hello"[1];
编辑:更新,以找到 “E”。
答
char* str = "HELLO";
char c = str[1];
请记住,数组和字符串用C在0而不是1开始索引,所以“H”是str[0]
,“E”是str[1]
,第一个“L”是str[2]
等。
答
数组符号和指针运算可以在C/C++中互换使用(对于所有情况,这不是真的,但是到达那里时,您会自己找到这些实例)。所以,虽然str
是一个指针,你可以使用它,就好像它是一个数组,像这样:
char char_E = str[1];
char char_L1 = str[2];
char char_O = str[4];
...等等。你也可以做的是“指向字符str
的指针值”加1“,然后指向字符串中的第二个字符。那么你可以简单地做:
str = str + 1; // makes it point to 'E' now
char myChar = *str;
我希望这可以帮助。
答
#include <iostream>
#include <string>
using namespace std;
int main()
{string a="HELLO";char b=a[1];
cout<<b;
return 0;}
这得到了“E”? – Thanatos
不,但我理解它,可以让它为我自己工作 – Aspyn
好吧,坚果,我误解了。我正在为“O”代替。仍然答案仍然适用。 –