结构体、函数指针

原创 2015年11月17日 20:38:54
#include <stdio.h>
#include <stdlib.h>

void study(){
	printf("吃饭睡觉打豆豆\n"); 
} 

//定义一个结构体 
struct student{
	int age;
	int height;
	char sex;
	
	//结构体中不能定义函数,但可以定义函数指针
	void (*studyP)(); 
};

main(){
	//定义结构体的变量
	struct student st ={24,168,'m',study};
	printf("年龄是%d\n",st.age);
	printf("结构体的长度是%d\n",sizeof(st));
	
	//调用函数指针有3种方法
	//1
	st.studyP();
	 
	//2
	struct student* stp = &st;
	(*stp).studyP();
	
	//3
	stp->studyP(); 
	 
	system("pause");
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

指针结构体函数-其实可以这样详细理解

今天一大早登了下QQ空间,看到本科的一个学弟发表一篇日志,写关于西电微软俱乐部面试题的解答,写的很不错。我也一下子起兴了,因为我曾经也是被指针困惑很久,搞不清头绪,本科到研究生,我也笔试面试不下二十次...
  • A09211008
  • A09211008
  • 2014年08月28日 08:28
  • 1873

结构体、结构体体指针作为函数返回值

函数使用结构体、结构体指针作为返回值分析32位机,gcc编译器使用结构体作为返回值分析反汇编代码可知,当被调用的子函数返回值为结构体的时候,调用函数将分配一段空间用于存放返回的结构体(使用一个结构体变...
  • dfq12345
  • dfq12345
  • 2017年06月29日 18:48
  • 2465

C语言结构体中定义函数指针详解

在学习嵌入式我们经常和结构体函数指针打交道,还有链表,环形缓冲区之类的,这里中点讲解结构体中定义函数指针。下面这个程序你看一遍你基本也明白用法了。 下面是我写的一个很简单的程序struct.c #in...
  • qq_21792169
  • qq_21792169
  • 2015年12月30日 17:24
  • 21014

结构体、结构指针作为函数参数

- 结构体、结构指针作为函数参数1.简介 结构体,结构体指针作为函数的参数现在应用的非常广泛,但一些细微 之处还需要引起注意。本文将讨论其作为形参和实参的区别。2.结构体作为参数 ...
  • jin13277480598
  • jin13277480598
  • 2015年09月05日 16:46
  • 6191

结构体中定义函数指针

结构体指针变量的定义,定义结构体变量的一般形式如下: 形式1:先定义结构体类型,再定义变量 struct结构体标识符 { 成员变量列表;… }; struct 结构体标识符 *指针变量名; 变量初...
  • unix21
  • unix21
  • 2013年07月10日 18:54
  • 2829

浅析结构体函数指针与内核设备驱动

最近在公司没什么事做,突然有来写写日志和博客,这种突发的灵感来自于我在学习内核驱动代码的时候发现了结构体的一种古老的初始化方法,多亏了尚观广州校区的叶老师在群里用心的给我文字讲解,让我明白了原来结构体...
  • morixinguan
  • morixinguan
  • 2015年12月28日 22:27
  • 1488

关于指针在结构体中的调用

typedef struct { int dat; int *ptr; }Sample; Sample temp; printf("%d\n",&temp.dat); pri...
  • u011362297
  • u011362297
  • 2014年04月12日 11:48
  • 1183

如何正确使用指针(指针作为输出型参数)与结构体指针作为函数参数

如何正确使用指针(指针作为输出型参数)与结构体指针作为函数参数 外部定义一个结构体类型指针变量,使用##结构体指针里面的内嵌指针,返回值,双重指针##方式进行地址传递...
  • TongxinV
  • TongxinV
  • 2017年02月10日 15:12
  • 2006

子函数返回数组(指针和结构体)

有些时候需要子函数将一个数组返回出来,通常是两种方法,一种是靠指针,另一种是结构体。 一、先来看依靠指针怎么做 例程1: 1 #include "stdio.h" 2 3 char *...
  • u011426247
  • u011426247
  • 2016年08月08日 21:46
  • 1143

当结构体遇上宏定义,以及函数指针的高级写法(结构体中能用宏定义一个函数?)

一、结构体中可以定义一般的宏定义 如:struct aaa { #define STATUS_1 100 #define STATUS_2 200 #define STATUS_3...
  • nwd0729
  • nwd0729
  • 2016年03月10日 09:37
  • 1691
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:结构体、函数指针
举报原因:
原因补充:

(最多只允许输入30个字)