对于作业,我必须创建一个字符串**数组并进行操作。准则指出,您可以按如下所示创建字符串,然后按如下所示分配它。
码:
string **diceArray;
diceArray[0][0] = "t";
diceArray[0][1] = "e";
diceArray[0][2] = "l";
diceArray[0][3] = "l";
我也尝试了下面的代码来分配,但这也失败了
string ** diceArray;
diceArray = new string*[rows];
for(unsigned int i = 0; i<rows; i++){
diceArray[rows] = new string[cols];
}
最佳答案
您需要引用内存(内存指针),并且需要为该数据保留空间。
如果您将始终具有相同大小的字符串缓冲区,则可以创建变量
string diceArray[1][4];
或者,如果您需要带有动态词数的字符串的动态大小,则可以使用类似的方法。
string **str = new string*[x];
for (int i=0; i<x; i++)
str[i] = new string[y];