首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

构造

2013-03-21 
结构?本帖最后由 GioPna 于 2013-03-19 22:24:45 编辑//用函数初始化结构!#include stdio.hstruct TT{in

结构?
本帖最后由 GioPna 于 2013-03-19 22:24:45 编辑


//用函数初始化结构!

#include <stdio.h>

struct TT{
  int  x;
  char y;
};

struct TT q1 M(int x1, char y1);

int main()
 {
    struct TT q;
    q=M(1,'Q');
 }
 
struct TT q1 M(int x1, char y1)
 {
   struct TT a;
   a.x=x1;
   a.y=y1;
   return a;
 }

 


z@z:~$ gcc a.c
a.c:8: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘M’
a.c: In function ‘main’:
a.c:13: error: incompatible types when assigning to type ‘struct TT’ from type ‘int’
a.c: At top level:
a.c:16: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘M’


为什么错了?
[解决办法]

#include <stdio.h>
 
struct TT{
  int  x;
  char y;
};
 
struct TT M(int x1, char y1); //函数返回类型 不需要在定义变量了
 
int main()
 {
    struct TT q;
    q=M(1,'Q');
 }
  
struct TT M(int x1, char y1)
 {
   struct TT a;
   a.x=x1;
   a.y=y1;
   return a;
 }

热点排行