【问题标题】:How to store a string got by getline() function into a character array?如何将 getline() 函数得到的字符串存储到字符数组中?
【发布时间】:2014-10-08 21:48:30
【问题描述】:
#include<iostream>
using namespace std ; 
int main()
{
    string str ;
    getline(cin,str);
    return 0 ;
}

现在我想将 getline() 得到的字符串存储到一个字符数组中。 我想知道这之后该怎么办?

抱歉,这是一个非常基本的问题。我是初学者。谢谢

【问题讨论】:

    标签: c++11 getline character-arrays


    【解决方案1】:

    如果您的唯一目标是生成可以传递给函数的char*,则可以使用c_str()char*std::string 中取出。

    const char* cstring = str.c_str();
    

    如果您想将其复制到现有的char[] 中,那么您可以使用strncpy,假设您的字符串中没有 NULL 字符。

    char buffer[MAX_LINE_SIZE];
    strncpy(buffer, str.c_str(), str.size());
    

    【讨论】:

      猜你喜欢
      • 2019-11-23
      • 1970-01-01
      • 1970-01-01
      • 2015-05-14
      • 1970-01-01
      • 2015-02-08
      • 2019-07-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多