标题:结构体内定义函数怎么编译报错
只看楼主
justwant
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2008-6-8
 问题点数:0 回复次数:13 
结构体内定义函数怎么编译报错
#include<stdio.h>
struct stu
{
   int id;
   int age;
   int gd;
   int exit(void);
};
struct stu s;
struct stu *p;
p=&s;


int main()
{  
  printf("%d",p->exit);
  return 0;
   
}
int exit(void)
{
     int k=20;
     return k;
 }
field `exit' declared as a function
搜索更多相关主题的帖子: int 函数 定义 exit stu 
2008-06-23 18:19
smltq
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:566
专家分:400
注 册:2008-1-21
得分:0 
struct stu
{
   int id;
   int age;
   int gd;
   int exit(void);//???
};
2008-06-23 18:22
benyu1107
Rank: 1
来 自:桂林
等 级:新手上路
帖 子:116
专家分:0
注 册:2008-4-24
得分:0 
我也同意ls的……
2008-06-23 18:41
justwant
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2008-6-8
得分:0 

那请问要怎么在结构体内定义一个函数
2008-06-23 18:46
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
得分:0 
int stu::exit(void)
{
     int k=20;
     return k;
}

  printf("%d",p->exit());

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-23 18:49
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
得分:0 
p=&s;这行语句麻烦写在main里面……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-23 18:53
justwant
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2008-6-8
得分:0 
那C里面没有::,那怎么定义
2008-06-23 19:02
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
得分:0 
你也知道没有啊
那你还这么写?

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-23 19:24
justwant
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2008-6-8
得分:0 
那要在结构体里面定义一个函数成员,怎么定义啊?
或者定义一个指向函数的指针也可以啊
2008-06-23 19:33
lingluoz
Rank: 2
来 自:苏州科技学院
等 级:新手上路
威 望:4
帖 子:749
专家分:0
注 册:2008-2-2
得分:0 
在C语言的结构里面定义一个函数。。虽然C语言不像C++那样支持在结构里面定义函数。。但是你可以通过定义一个函数指针来实现。。如果有必要的话
在结构里面定义void (*pf_exit)(void);
调用的时候
(*stu.pf_exit)();
oh yeah你试试吧

Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.
2008-06-23 22:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-220748-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.368199 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved