【015 关键字】typedef和define的区别

news/2025/1/31 7:48:41/

一、两者区别

关键字typedefdefine(宏)
作用不同定义(标识符或关键字)别名简单字符串替换
执行时间不同编译过程一部分预处理过程完成
作用域不同从定义到花括号“}”截至从定义到文件结尾截止

对指针操作不同

typedef int* INTPTR1;

INTPTR1 p1,p1;

相当于

int *p1和int p2

#define INTPTR2 int*

INTPTR1 p3,p4;

相当于

int *p3和int *p4

示例typedef int INT;#define INT int
示例含义int别名为INT单纯替换
示例注意分号结尾无分号

个人理解:*p中p为地址,*为取p地址所在的变量值,int *p理解为声明一个int类型的变量*p,但是并没有为变量分配空间,仅分配了p地址空间。

二、参考内容

1.面试题:typedef与#define的区别_博阿卿的博客-CSDN博客

2.typedef和#define的用法与区别 - - 博客园

3.typedef和define的作用域_testman00的博客-CSDN博客

4.int* p;和int *p;应怎样理解(c++语言中星号的位置)?_秋叶依剑的博客-CSDN博客_int *p


http://www.ppmy.cn/news/19561.html

相关文章

Vue3【1.v-if 和 v-show 、2.动态组件、 3.网页的渲染 、4.v-for】

文章目录1.v-if 和 v-show2.动态组件3.网页的渲染4.v-for4.1 v-for 与对象4.2 在 v-for 里使用范围值4.3 v-for 与 v-if4.4 通过 key 管理状态4.5 组件上使用 v-for1.v-if 和 v-show v-show 可以根据值来决定元素是否显示(通过display来切换元素的显示状态&#xff…

(python)selenium工具的安装及其使用

selenium概述 一个自动化测试工具。它可以让python代码调用浏览器。并获取到浏览器中加载的各种资源 优缺点: 优点 selenium能够执行页面上的js,对于js渲染的数据和模拟登陆处理起来非常容易使用难度简单爬取速度慢,爬取频率更像人的行为&a…

网狐大联盟非联盟成员无法创建房间解决-暂时不可创建当前游戏,请选择其他游戏!

"暂时不可创建当前游戏,请选择其他游戏!" 问题所有lua文件定位:

【Linux】六、Linux 基础IO(三)|文件系统|软硬链接|文件的三个时间

目录 八、文件系统 8.1 磁盘 8.1.1 磁盘的物理结构 8.1.2 磁盘的存储结构 8.1.3 磁盘的逻辑结构 8.2 inode 九、软硬链接 9.1 软链接 9.2 硬链接 9.3 当前路径(.)和上级路径(..) 十、文件的三个时间 八、文件系统 上面的内容谈论的都是一个被打开文件,那…

[数据结构基础]排序算法第一弹 -- 直接插入排序和希尔排序

一. 排序的概念及分类 1.1 排序的概念 排序,就是使一串数据,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 1.2 常见的排序算法 图1.1按照排序算法的思想,将排序分为四大类:插入排序、选择排序…

GPU虚拟化(留坑)

文章内容大程度参考B站王利明老师对《GPU虚拟化技术分享》的演讲:https://b23.tv/uQKBpcK GPU 有什么用? GPU可以用于图形渲染,也能够用于高性能计算和编解码等场景。 图:GPU 的典型软件架构(不含虚拟化) …

2023-1-24 刷题情况

最大正方形II 题目描述 图上有一个矩阵,由N*M个格子组成,这些格子由两种颜色构成,黑色和白色。请找到面积最大的且内部是黑白交错(即两个相连的正方形颜色不能相同)的正方形。 输入格式 第一行两个整数N和M&#x…

程序化交易接口下单程序怎么编写?

程序化交易接口下单程序怎么编写?程序化交易接口主要提供同花顺交易系统的数据信息,如果要想从中挖掘更多的数据信息,则就要进行参考性的分析一套股票数据接口编程,那应该怎么写呢?参考程序化交易接口系统开发方面&…