我有一个字符串String s = "B"
我想将其转换为char cs = 'B'
我该怎么办?
答案 0 :(得分:2)
可以像访问单个字符的数组一样访问std::string
:
char cs = s[0];
但要小心,就像数组一样,你可以使用索引超出界限!
答案 1 :(得分:2)
按索引
从string
检索字符
std::string s = "B"; // It has at least one character
char cs = s[0];
答案 2 :(得分:2)
你不能 string
到char
。你也不能转换它。根据定义,一个字符串包含零个或多个char
s,所以你想做的事情最多也不清楚!
例如,如果你有String s = "BC"
,你会期待什么? 'B'
? 'C'
? 4
('B'
和'C'
的溢出总和?还有别的吗?
如果您想要获取字符串中的第一个字符,您可以像访问数组一样访问它:
char cs = s[0];
请注意,您应首先检查某种边界,以确保字符串中至少有一个字符。
答案 3 :(得分:1)
以下将获取s
的第一个字符(如果字符串为空,则为0):
std::string s = ...;
char cs = 0;
if (!s.empty()) {
cs = s[0];
}