#include<stdio.h>
#include<string.h>
#include<stdlib.h> // 数组指针 语法 梳理
//
//int a[10];// // int add(int a, int b)
{
return a + b;
}
int main()
{
int a[10]; //a代表的是数组首元素的地址 &a代表整个数组的地址 a+1的步长为4 &a+1步长=40 .
//定义一个数组类型
{
typedef int (myTypeArray)[10];
myTypeArray Myarray;
Myarray[0] = 10;
}
//定义一个指针数组类型
{
typedef int(*PTypeArray)[10];
PTypeArray myPArray;
myPArray = a;
//myPArray[0] = 20; 这句话是错误的,因为myPArray相当于二级指针,它是指向一个数组的指针
(*myPArray)[0] = 20;
}
//定义一个指向 数组类型的指针 数组类的指针
{
int(*mypointer)[10];
mypointer = a;
(*mypointer)[0] = 21;
printf("%d\n", a[0]);
} //函数指针语法梳理
//1 如何定义一个函数类型
//2 如何定义一个函数指针类型
//3 如何定义一个 函数指针 (指向一个函数的入口地址) //1 如何定义一个函数类型
int temp;
{
typedef int (MyTypeFuc)(int a, int b);
MyTypeFuc *myfunc;
myfunc = add;
temp= myfunc(2, 4);
printf("temp= myfunc(2, 4)===>%d\n", temp);
}
// 2 如何定义一个函数指针类型
{
typedef int(*MyPTypeFunc)(int a, int b);
MyPTypeFunc myPfunc;
myPfunc = add;
temp=myPfunc(4, 6);
printf("temp=myPfunc(4, 6)===>%d\n", temp); }
//3 如何定义一个 函数指针 (指向一个函数的入口地址)
{
int(*MyPFunc)(int a, int b);
MyPFunc = add;
temp=MyPFunc(3, 6);
printf("temp=MyPFunc(3, 6)===>%d\n", temp);
}
system("pause");
}

  这里的加了typedef 和没有加的区别就是:加了则定义一种类型,没加则是代表的一种表现的形式。

最新文章

  1. 【第一课】WEBIX 入门自学-介绍WEBIX
  2. Android listview与adapter用法
  3. 论一次iOS面试
  4. iOS开发icon&amp;images Size
  5. html状态码与缓存学习
  6. DPdao
  7. Backup App&#39;s data without rooting the phone
  8. K2 Blackpearl 4.6.8 安装步骤详解
  9. VC菜菜鸟:建立第一个基于Visual C++的Windows窗口程序
  10. Jquery filter()方法简介
  11. 自动生成 java 测试 mock 对象框架 DataFactory-01-入门使用教程
  12. Spring.xml中配置注解context:annotation-config和context:component-scan简述
  13. LeetCode算法题-Single Number(Java实现)
  14. oracle常用小知识点
  15. centos常用命令--备份
  16. Java获取URL链接的文件类型
  17. MySql【Insert Select Not Exist】判断记录再添加值的方案
  18. zookeeper集群搭建 windows
  19. c#连接oracle的几种方式
  20. 局域网传输-LED灯搭建局域网:数据传输可达每秒3Gb

热门文章

  1. 题解——洛谷P1550 [USACO08OCT]打井Watering Hole(最小生成树,建图)
  2. Sample Classification Code of CIFAR-10 in Torch
  3. 函数嵌套函数传递this值
  4. 【C#】C#学习笔记_1
  5. facebook api之Access and Authentication
  6. System.ServiceProcess与System.Configuration.Install命名空间的介绍
  7. Sublime Text3 插件:DocBlockr与javascript注释规范
  8. Ubuntu 18.04版本下安装网易云音乐
  9. HDU 5459 Jesus Is Here(递推)
  10. jqGrid API (转)