我现在得到一个二维的字符串想保存起来,然后在程序的其他地方用,这个二维字符串是不知道维数大小的,我想的是用二维字符串数组给它保存起来,可是定义一个二维字符串数组必须知道大小,我该怎么做呢?

解决方案 »

  1.   

    动态申请二维数组。
    char** s = new char*[5];
    for(int i = 0; i<5;i++)
      s[i] = new char[20];用完记得delete。
      

  2.   

    晕,用map不就OK了,方便,效率,稳定
      

  3.   

    动态的数据可以用模板指针或者Vector来保存,你要保存的二维字符串可以用两个模板嵌套指针来存储的。
      

  4.   

    struct XString{
      int dimX;
      int dimY;
      char ** pData;
    };XString arr;
    arr.dimX=10;    //字符串个数
    arr.dimY=255;   //最长字符串长度
    arr.pData=new char[arr.dimX][arr.dimY+1];strcpy(arr.pData[0],"abcd");  //赋值
    ...
    ...arr.pData[2][1];  //第三个字符串的第二个字符
      

  5.   

    如果在用MFC 请用类CStringArray