码迷,mamicode.com
首页 > 编程语言 > 详细

在C语言结构体中添加成员函数

时间:2017-05-06 17:45:42      阅读:192      评论:0      收藏:0      [点我收藏+]

标签:hello   使用   log   system   结构体   void   struct   成员方法   对象   

  我们在使用C语言的结构体时,经常都是只定义几个成员变量,而学过面向对象的人应该知道,我们定义类时,不只是定义了成员变量,还定义了成员方法,而类的结构和结构体非常的相似,所以,为什么不想想如何在C语言结构体中添加成员变量呢

  在C语言的结构体中是不能直接定义成员函数的,这点和C++不同,但是我们可以通过定义一个函数指针的方式来指向一个方法。

  示例代码如下:

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 typedef struct node
 4 {
 5     int a;
 6     void(*p)(int b);
 7 }no;
 8 
 9 void fun(int b)
10 {
11     printf("hello,%d\n",b);
12 }
13 
14 int main()
15 {
16     no a = { 1,fun };
17 
18     a.p(a.a);
19     system("pause");
20     return 0;
21 }

  这段代码运行出来,控制台会打印出hello,1.这就表面明了,我们成功的调用了函数,并且成功的传递了参数进去。

在C语言结构体中添加成员函数

标签:hello   使用   log   system   结构体   void   struct   成员方法   对象   

原文地址:http://www.cnblogs.com/swust-wangyf/p/6817055.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!