Hey Guys我是c +的新手,想知道如何打印出我阵列的第一个字母。看看下面:
string arr[] = { "Ron", "Red", "Frun" };
for each (string var in arr)
{
if (var.front == "R")
{
cout << var << endl;
}
}
我想在数组中打印出以字母R开头的字符串,如Red和Ron
答案 0 :(得分:4)
您可以使用带括号的索引来拉出字符串中任何给定索引处的字符。所以,对于你的字符串var:
if (var[0] == 'R')
{
std::cout << var << std::endl;
}
或者,您可以使用front()函数,如下所示:
if (var.front() == 'R')
{
std::cout << var << std::endl;
}
请注意,当您将第一个字符与“R”进行比较时,您也会犯一个错误 - 双引号表示字符串文字,而不是字符,而indexing和front()都返回一个字符。其次,你编写它的代码,我修改它,只检查大写R,所以“red”或“ron”将不会执行任何代码。
答案 1 :(得分:3)
for( auto s : arr )
{
char x = s.front();
if( x =='R' || x== 'r' )
{
std::cout << s << '\n';
}
}