检查字符串数组值是否为null / empty C ++

时间:2013-12-15 23:40:12

标签: c++ arrays string

好的,所以我想查看数组的值array1是否为空,如果是,则不应该将其放入array2。我该怎么做?

    for (int i =0; i < 70549; i ++)
        {
            std::size_t found = array1[i].find(result[1]);

            if (found!=std::string::npos)

                array2[i] = array1[i];              
        }   
    cout 

2 个答案:

答案 0 :(得分:0)

听起来像你想要的std::copy_if。我不确定你想要什么样的条件。在英语中,您描述了C ++函数.empty(),但您的C ++代码实现了一个测试“string包含子串result[1]”。 std::copy_if可以同时使用。

答案 1 :(得分:-1)

看起来你想要字符串的empty()方法。您可以像这样扩展您的条件:

if (!array1[i].empty() && found != std::string::npos)
    array2[i] = array1[i];

显然,array2中的值将保持不变(可能是空白),但array1值未被复制。如果那不是您想要的,那么您需要保留第二个循环计数器,它将索引array2。每次实际复制值时,它都会递增。