C++ - 如何将char*转换为std :: list <char>

Moh*_*rek 0 c++ stdlist chars

这是一个初学者类型的问题

我只是想知道是否有办法将空终止的char*转换为std :: list.

谢谢

char* data = ...
std::list<char> clist = convert_chars2list(data);
...
convert_chars2list(char* somedata)
{
    //convert
}
Run Code Online (Sandbox Code Playgroud)

And*_*owl 9

这可能是最简单的方法:

#include <list>
#include <string>

int main() 
{ 
    char const* data = "Hello world";
    std::list<char> l(data, data + strlen(data));
}
Run Code Online (Sandbox Code Playgroud)

它利用了std::string具有与STL容器兼容的接口的事实.