📌  相关文章
📜  如何使字符串获取空格c ++(1)

📅  最后修改于: 2023-12-03 15:08:16.886000             🧑  作者: Mango

如何使字符串获取空格 C++

在C++中,获取字符串中的空格可以使用多种方法。下面我们将介绍一些常用的方法。

方法一:使用getline()函数

getline()函数可以从std::istream中读取一行字符串,包括其中的空格,并将其存储在一个std::string对象中。

#include <iostream>
#include <string>

using namespace std;

int main()
{
    string str;
    getline(cin, str);

    cout << "The input string is: " << str << endl;

    return 0;
}

上面的代码中,我们使用getline()函数从标准输入中读取一行字符串,并将其存储在str对象中。然后我们输出这个字符串。

方法二:使用cin.get()函数

cin.get()函数可以从输入流中逐个字符地读取字符,包括其中的空格,并将其存储在一个字符数组中。

#include <iostream>

using namespace std;

int main()
{
    char str[100];
    cout << "Enter a string: ";
    cin.get(str, 100);

    cout << "The input string is: " << str << endl;

    return 0;
}

上面的代码中,我们使用cin.get()函数从标准输入中逐个字符地读取字符,并将其存储在str字符数组中。然后我们输出这个字符串。

方法三:使用stringstream类

stringstream类是C++标准库中的一个用于字符串流的类,可以用于将字符串转换为其他类型或者将其他类型转换为字符串。我们可以使用它来提取字符串中的空格。

#include <iostream>
#include <sstream>
#include <string>

using namespace std;

int main()
{
    string str = "Hello World Here";
    stringstream ss(str);

    string word;
    while (ss >> word)
        cout << word << endl;

    return 0;
}

上面的代码中,我们使用stringstream类从字符串"Hello World Here"中提取单词,并将它们一一输出。

方法四:使用strtok()函数

strtok()函数可以将一个字符串分割成多个子字符串,每个子字符串以一个指定的分隔符为界。我们可以使用它来分割字符串中的空格。

#include <iostream>
#include <cstring>

using namespace std;

int main()
{
    char str[] = "hello world here";
    char *pch;

    pch = strtok(str, " ");

    while (pch != NULL)
    {
        cout << pch << endl;
        pch = strtok(NULL, " ");
    }

    return 0;
}

上面的代码中,我们使用strtok()函数从字符串"hello world here"中提取单词,并将它们一一输出。

以上是C++中几种获取字符串中空格的方法。做为程序员应该使用合适的方法根据实际需求来选择使用。