有什么有关问题啊大牛们

有什么问题啊,大牛们#include stdio.h#include stdlib.hunionu{unsigneda:2unsignedb:4charc:5char

有什么问题啊,大牛们
#include <stdio.h>
  #include <stdlib.h>

                union   u{
                            unsigned   a:2;
                            unsigned   b:4;
                            char   c:5;
                            char   d;
                }b={1};
                union   u   func()
                {

                            return   b;}
  int   main(void)    
    {        

                union   u   g;
                g=func(g);
                printf( "%d ",g.a);
                getchar();
return   0;
    }

[解决办法]
union u func()
----------------
func()函数没有参数吗?