Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ STL地图和c++;_C++_Stl - Fatal编程技术网

C++ STL地图和c++;

C++ STL地图和c++;,c++,stl,C++,Stl,可能重复: 是否有任何方法可以将字符串从stl映射返回到字符数组中 multimap<string, string> testcase; testcase.insert(pair<string,string>("DB","something")); for( i=testcase.begin(); i!=testcase.end(); ++i){ char cate[20] =(*i).first; multimap测试用例; insert(成

可能重复:

是否有任何方法可以将字符串从stl映射返回到字符数组中

multimap<string, string> testcase;
testcase.insert(pair<string,string>("DB","something"));
for( i=testcase.begin(); i!=testcase.end(); ++i){
            char cate[20] =(*i).first;
multimap测试用例;
insert(成对(“DB”,“某物”);
对于(i=testcase.begin();i!=testcase.end();++i){
charcate[20]=(*i).第一;

我的代码如下所示……我可以保存(*i)吗?首先(或第二次)保存到字符数组中?

假设您知道字符串的大小,使用您的原始意图:

char cate[20];
assert(i->first.size() < sizeof(cate));
strcpy(i->first.c_str());
或C型:

char *cate(strdup(i->first.c_str()));
最后,要使用“C”指针访问字符串:


假设您知道字符串的大小,使用您的原始意图:

char cate[20];
assert(i->first.size() < sizeof(cate));
strcpy(i->first.c_str());
或C型:

char *cate(strdup(i->first.c_str()));
最后,要使用“C”指针访问字符串:


我所要做的就是…strcpy从没打过我谢谢matt

char cate[20];
char server[30];
strcpy(cate,i->first.c_str());
strcpy(server,i->first.c_str());

我所要做的就是…strcpy从没打过我谢谢matt

char cate[20];
char server[30];
strcpy(cate,i->first.c_str());
strcpy(server,i->first.c_str());
复制(这与
std::map
完全无关。是的,按照James的评论,有一种方法(或有方法),但为什么要填充字符数组?您试图解决的真正问题是什么?复制(这与
std::map
完全无关。是的,有一种方法(或有方法),根据James的评论,但是为什么要填充char数组?您试图解决的真正问题是什么?