none
怎么让一个函数返回一个数组?? RRS feed

  • 问题

  • 比如说:
    char fun(char c[], int n)
    {
        for(int i=0; i<n; i++)
           {  c[i]=i;  }
        return c;
    }
    这样编译器会报错!
    我想让这个函数返回  c[]  整个字符串数组,那我要怎么写代码??
    2011年10月27日 14:39

答案

  • 以你这个传参方式的话,

    函数中的参数char c[]被当做指针处理了,相当于 char *c!

    所以把这个指针返回·····

    char* fun(char c[], int n)

    {.......

    return c;

    }


    stay hungry,stay foolish!
    • 已标记为答案 Rob Pan 2011年11月2日 2:17
    2011年10月28日 7:08

全部回复

  • 可以返回数组的首地址,修改函数的返回类型修改为char*
    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.
    2011年10月27日 14:59
    版主
  • 以你这个传参方式的话,

    函数中的参数char c[]被当做指针处理了,相当于 char *c!

    所以把这个指针返回·····

    char* fun(char c[], int n)

    {.......

    return c;

    }


    stay hungry,stay foolish!
    • 已标记为答案 Rob Pan 2011年11月2日 2:17
    2011年10月28日 7:08