获取字符串的第一个字符

时间:2014-11-26 20:37:42

标签: c++ string char

标题几乎说明了一切。我想知道如何将一个字符串转换为char。 任何帮助表示赞赏!

4 个答案:

答案 0 :(得分:6)

这是相对简单的:

char ch = str[0];

换句话说,只要抓住字符串中的第一个字符,假设它不是空的。

你可以做很多其他的事情,比如处理一个空字符串或跳过前导空格,但上面的代码应该适合你的特定问题。

答案 1 :(得分:1)

您可以使用字符串上的下标运算符来执行此操作,例如:

string a = "hello";
char b;
if (!a.empty())
  b = a[0];

答案 2 :(得分:0)

std :: string是一个连续字符的容器,提供对其元素的随机访问。至少有三种直接的方法来检索字符串中的第一个字符

#include <string>
...
std::string string{ "Hello" };

char c1{ string[ 0 ] },    // undefined when called on an empty string
     c2{ string.at( 0 ) }, // will throw if used on an empty string
     c3{ string.front() }; // C++11 equivalent to string[ 0 ]
...

答案 3 :(得分:-1)

字符串实际上是字符序列。你可以从那个序列中得到你想要的任何角色。

例如:

如果您的字符串hello, world只是字符序列:

h e l l o , w o {{ 1}} r l。其中第一个字符d的索引为0,最后一个字符的索引为11。

相同的规则适用于一个字符串:

h

这里有字符串#include <cstdio> int main() { char text[] = "h"; printf("%s\n", text); char first = text[0]; printf("%c\n", first); return 0; } ,它是只包含一个字符的字符序列。 :d

该字符串中的字符h索引为0,因此您可以使用h获取该字符。