c++ - 打印 C++ 字符串数组的首字母

标签 c++ arrays

大家好,我是 C++ 的新手,想知道如何打印出数组的第一个字母。看看下面:

string arr[] = { "Ron", "Red", "Frun" };

for each (string var in arr)
{
    if (var.front == "R")
    {
        cout << var << endl;
    }
}

我想打印出数组中以字母 R 开头的字符串,例如 Red 和 Ron

最佳答案

您可以使用带括号的索引来提取字符串中任何给定索引处的字符。所以,对于你的字符串变量:

if (var[0] == 'R')
{
    std::cout << var << std::endl;
}

或者,您可以使用 front() 函数,如下所示:

if (var.front() == 'R')
{
    std::cout << var << std::endl;
}

请注意,当您将第一个字符与“R”进行比较时,您也会犯错误 - 双引号表示字符串文字,而不是字符,并且索引和 front() 都返回一个字符。其次,您编写的代码以及我修改过的代码仅检查大写字母 R,因此“red”或“ron”不会执行任何代码。

关于c++ - 打印 C++ 字符串数组的首字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26644727/

相关文章:

c++ - Qt中多个ui窗体的切换

c++ - std::allocator<T>:是否允许在 C++ 中构建未分配的内存?

javascript - 从一个数组值创建链接

C++ 返回指向动态分配数组的指针

c++ - C++ 对象数组上的 OpenMP for 循环

javascript - 在不使用 jQuery 的情况下在 JavaScript 中将表转换为数组

c++ - 为什么 MobileSubstrate 在 hook C++ 函数时使用这么长的函数名?

c++ - OpenCV3 image.depth() 为零

arrays - 为什么我的 Perl 循环最后关闭了 1?

c++ - 从异或神经网络到图像识别