char strResult[39][100];char **GetResult( ) 
{ return strResult ;}
编译不通过
怎样返回二维数组。
请指教

解决方案 »

  1.   

    char strResult[39][100];char **GetResult( ) 
    { return (char**)strResult ;}
      

  2.   

    char** getresult()
    {
    char strResult[39][100];
    return (char**)strResult;
    }
      

  3.   

    #include <stdio.h>char strResult[39][100];char** GetResult( ) 

    return (char**)strResult;
    }void main()
    {
    return;
    }这个编译没有问题!
      

  4.   

    char strResult[39][100];char **GetResult( ) 
    { return (char**)strResult ;}
    如果这样可以
    我现在调用
    main{
    char str[39][100];
    str = GetResult( );cout << str[0];
    }
    也出错,请教怎样调用呢
      

  5.   

    //一、作为二维数组
    char strResult[39][100];
    typedef char (*MyArray)[100];
    MyArray GetMyResult()
    {
    return strResult;
    }//二、作为一维数组
    char* GetMyResult()
    {
    return (char*)&strResult[0][0];
    }
      

  6.   

    //一、作为二维数组
    main{
    char (*str)[100];
    str = GetResult( );cout << str[0][0];
    }//一、作为一维数组
    main{
    char* str;// 返回39 * 100 的一维数组
    str = GetResult( );cout << str[0];
    }