小弟我自己定义的类型修饰符,不会用请大家指教

我自己定义的类型修饰符,不会用请大家指教.
char     *   qq(int)
{
                char   c[]= "盛大 ";
                return   c;
}
int   main(int   argc,   char*   argv[])
{
      typedef   char   *fun(int);   //简单的自定义类型修饰符我懂,但是这样复杂的自定义类型修饰符我却不能理解
      //上面所定义的是一个什么数据类型啊,应当怎么配合上面的函数使用啊,请各位帮忙解释一下,谢谢了.
      cin.get();
      return   0;
}

------解决方案--------------------
typedef char* (*Fun)(int);

Fun f = qq;

f(1);
------解决方案--------------------
一定是楼主写错了,应该如楼上:

typedef char* (*Fun)(int);

定义了一个指向函数的指针类型Fun,指向的函数返回值是char*, 形参是一个int

下面用Fun定义变量,即是指向这种函数的指针了,即:

Fun p=qq;

p(100); //调用方法,相当于qq(100)


另外楼主的qq函数有问题,返回了一个指向栈内变量的指针,是错的,要改一下:

char * qq(int)
{
static char c[]= "盛大 "; //声明为静态即可
return c;
}
------解决方案--------------------
typedef char *fun(int);

函数指针类型

http://dugujian.bokee.com/397878.html

http://www.jr163.org/cup2/21/21479.htm


http://www.webpc8.com/Article/c/zz/200603/Article_4812.html
------解决方案--------------------
MARK && STUDY