这新的定义怎么初始化char *cTemp[1024]
我的意思是想初始化出 cTemp = new char[i][1024];

解决方案 »

  1.   

    如果你想建立一个存放字符串的数组,每个串最大长度是1024,还要用到堆的话,参考以下代码:#include <iostream.h>
    #include <string.h>int main()
    {
    const int N = 3; char *cTemp[N]; for(int i = 0; i < N; i++)
    {
    cTemp[i] = new char[1024];
    memset(&cTemp[i][0],0,1024);
    } memcpy(&cTemp[0][0], "hehe",5);
    memcpy(&cTemp[1][0], "hihi",5);
    memcpy(&cTemp[2][0], "hoho",5); cout << &cTemp[0][0] <<endl;
    cout << &cTemp[1][0] <<endl;
    cout << &cTemp[2][0] <<endl; for(i = 0; i < N; i++)
    {
    delete cTemp[i];
    } return 0;
    }
      

  2.   

    如果你想建立一个存放字符串的数组,每个串最大长度是1024,还要用到堆的话,参考以下代码:#include <iostream.h>
    #include <string.h>int main()
    {
    const int N = 3; char *cTemp[N]; for(int i = 0; i < N; i++)
    {
    cTemp[i] = new char[1024];
    memset(&cTemp[i][0],0,1024);
    } memcpy(&cTemp[0][0], "hehe",5);
    memcpy(&cTemp[1][0], "hihi",5);
    memcpy(&cTemp[2][0], "hoho",5); cout << &cTemp[0][0] <<endl;
    cout << &cTemp[1][0] <<endl;
    cout << &cTemp[2][0] <<endl; for(i = 0; i < N; i++)
    {
    delete cTemp[i];
    } return 0;
    }