a***r 发帖数: 420 | 1 我有一个n*m的dataset,里面的信息是两个没有顺序的字母,ie.A B,B C,C B...
因为dataset很大,打算用C++处理,有个基础问题,网上教程老看不明白,
就是如何建立一个string的array?
比如在把这些信息存入C++的array时,我现在是建了一个三维的char数组,可否/如何
直接建立一个
string的二维数组呢?
如果上面这个问题成立,即如果可以有string的数组
有什么好办法可以把一个string分成指定大小,存入指定长度的string的数组呢?
比如我为了sql方便,把每行的m个col合成一个field
相当于成了一维的string数组
然后我在mysql里面sort啥的完了
用getline(cin,line),重新读入c++的二维数组,这时我希望把这个field按两个两
个放到
string的array里,但是getline似乎没有相应的命令,或者,我应该在合成field的时
候,就在每
两个字母间加个delimiter,然后用getline(cin,line,delim)?
另外,从generally的来说,string,是不是可以完全等同于一个char的array呢??
希望说清楚了问题,只在大学学过基本编程,望大虾们不吝赐教:) | y****d 发帖数: 291 | 2 1. #include
#include
using namespace std;
const num=100;
string ct[num][num];
这个你要知道每个维度有多大。
2. 你是想把二维变成一维的话,用string temp=ct[0][0].append(ct[0][index]), 最
后就是你想要的那一行的合成吧。
3. 不全是吧。C里面的string最后一个是\
null,c++里面是string class的一个对象。如果想从c++转c的string,
#include
temp.cstr()是做这个的。如果要把char *变成c++ string,#include
sstream ss; ss>>temp;a=temp.str()就好了。
我觉得还是python好用,用python没那么麻烦 | c***r 发帖数: 1570 | |
|