当前位置: 首页 > news >正文

昆山住房城乡建设局网站查询怀化订水网站

昆山住房城乡建设局网站查询,怀化订水网站,汕头百姓网二手房出售,无锡楼市最新消息在C语言的指针章节中,我们讲到函数指针模块 在函数指针中,有一个重要的关键字:typedef typedef关键字作用基本语法重难点:对数组指针与函数指针的重命名数组指针重命名一维数组指针重命名遍历二维数组函数指针重命名作用 typedef是…

在C语言的指针章节中,我们讲到函数指针模块
在函数指针中,有一个重要的关键字:typedef

typedef关键字

  • 作用
  • 基本语法
  • 重难点:对数组指针与函数指针的重命名
    • 数组指针重命名
      • 一维数组指针重命名
      • 遍历二维数组
    • 函数指针重命名

作用

typedef是用来类型重命名的,将复杂的类型简单化

重要提示:typedef并不创建新的数据类型,它只是给现有的类型起了一个“外号”。编译器会把它和原始类型视为完全相同的类型。



基本语法

typedef existing_type new_type_name;
  • existing_type:任何已有的基本数据类型(如int, float)或复合数据类型(如结构体、枚举、指针、数组)。

  • new_type_name:你为这个类型定义的新的名称。


typedef unsigned int UINT;
typedef char BYTE;UINT count = 10; // 等价于 unsigned int count = 10;
BYTE letter = 'A'; // 等价于 char letter = 'A';

你的程序将来需要将UINTunsigned int改为unsigned long,你只需要修改typedef这一行代码即可,而不需要修改所有声明变量的地方。



重难点:对数组指针与函数指针的重命名



数组指针重命名

比如我们有数组指针类型 int(*)[5] ,需要重命名为 parr_t,那可以这样写:

typedef int(*parr_t)[5]; //新的类型名必须在*的右边


一维数组指针重命名

#include <stdio.h>int main() {int arr[5] = {10, 20, 30, 40, 50};// 为"指向包含5个int的数组的指针"创建别名typedef int (*IntArray5Ptr)[5];// 使用该类型声明指针IntArray5Ptr ptr = &arr; // 注意:这里取整个数组的地址// 通过指针访问数组元素printf("第一个元素: %d\n", (*ptr)[0]);printf("第三个元素: %d\n", (*ptr)[2]);// 也可以这样访问printf("最后一个元素: %d\n", (*ptr)[4]);return 0;
}

遍历二维数组

#include <stdio.h>int main() {int matrix[2][3] = {{1, 2, 3},{4, 5, 6}};// 为"指向包含3个int的数组的指针"创建别名typedef int (*RowPtr)[3];// 使用该类型声明指针,指向第一行RowPtr ptr = matrix;printf("二维数组内容:\n");for (int i = 0; i < 2; i++) {for (int j = 0; j < 3; j++) {printf("%d ", (*ptr)[j]); // 访问当前行的元素}printf("\n");ptr++; // 移动到下一行}return 0;
}


函数指针重命名

基本语法:

 typedef 返回类型 (*新类型名)(参数列表);
#include <stdio.h>// 定义一个函数指针类型
typedef int (*MathFunc)(int, int);// 实际函数
int add(int a, int b) {return a + b;
}int subtract(int a, int b) {return a - b;
}int main() {// 使用类型别名声明函数指针MathFunc func = add;printf("加法结果: %d\n", func(5, 3));func = subtract;printf("减法结果: %d\n", func(5, 3));return 0;
}

在这里插入图片描述

http://www.dtcms.com/a/603520.html

相关文章:

  • 沈阳微网站建设ppt模板免费下载网址
  • 头文件包不包含源文件场景
  • 网站集群建设必要性如何做团购网站中的美食地处地图功能
  • 怀化网站建设企业哈尔滨百度seo代理
  • 算法工程师的矛与盾
  • 门户网站开发工具软件字节跳动员工数量
  • 网站建设步骤及分工论文做网站需要什么语言
  • 网站建设项目流程WordPress VIP充值
  • 所有网站302跳转百度可信赖的郑州网站建设
  • 网站开发与网站建设甘肃兰州地震最新消息
  • 网站开发与推广计划书个人域名备案做企业网站
  • 重庆网站建设公司是什么意思小程序免费网站
  • 汇编语言编译器MASM | 高效编写汇编程序的工具
  • 网站设计步骤图片文字图片制作网站
  • 个人教程网站广西网站建设开发团队
  • 国内高端大气的网站设计wordpress 安装地址
  • 网站 mvc 设计网站开发图片放哪里
  • 江苏网站建设seo优化a站app
  • 自动优化网站建设wordpress 添加自定义字段
  • 深圳盐田住房和建设局网站广州企业100强
  • 网站文字怎么做超链接wordpress承载压力
  • 徐州网站建设开发企业网站建设平台的功能
  • 网站设计O2O平台佛山总代理国外商品网站
  • leetcode 2654
  • 停机问题与考拉兹猜想:循环何时终止
  • 网站建立的企业flash手机网站制作
  • 海外网站推广优化专员网站关于我们怎么做
  • 久久建筑网是个什么样的网站中文手机app开发软件
  • 旅游分析 网站制作电子商务网站
  • 中国建材网官方网站免费企业wordpress主题