C语言能判断一个变量是int还是float吗?

C语言能判断一个变量是int还是float吗?

在开始前我有一些资料,是我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「C语言从专业入门到高级教程+工具包」,点个关注,全部无偿共享给大家!!!

在评论区回复"888",关注我之后私信回复"888",即可拿走。

简单回答是能。

复杂回答是:当它还是C语言的时候,能。

C语言作为一种native语言,是直接转化为机器语言运行的,因此在运行时间只有机器语言,C语言本身已经不存在了。所以也就不存在「C语言运行时间判断一个变量类型」的说法。

那么你如果问 C 语言能不能判断,只能是问的编译期,显然,编译器是知道每个变量属于什么类型的。变量的类型信息在编译期间都是有效的,所以编译器当然知道每个变量是什么类型。

运行时间判断变量类型则依赖于运行时间类型信息(RTTI),当然,这东西并不是对所有语言所有实现都存在。

如果单纯的是一个内存区域存储的数据,没有变量类型信息,要判断它是int还是float,这是无从判断的。只能大致推测它是 int 的概率更高还是 float 的概率更高。------不过怎么说呢,在「运行时间」,其实语言已经变成了机器语言,也根本没有「变量」这个概念了,所以题主的问题,也就不存在了。

相关推荐
是大强10 分钟前
DSP 和 MCU 的区别
单片机·嵌入式硬件
Zevalin爱灰灰17 分钟前
零基础入门学用物联网(ESP8266) 第一部分 基础知识篇(三)
单片机·物联网·嵌入式·esp8266
weixin_4607838726 分钟前
STM32CubeMX配置ST25R3911B外设指南
stm32·单片机·嵌入式硬件
学嵌入式的小杨同学1 小时前
STM32 进阶封神之路(十八):RTC 实战全攻略 —— 时间设置 + 秒中断 + 串口更新 + 闹钟功能(库函数 + 代码落地)
c++·stm32·单片机·嵌入式硬件·mcu·架构·硬件架构
学嵌入式的小杨同学1 小时前
STM32 进阶封神之路(十七):RTC 实时时钟深度解析 —— 从时钟源到寄存器配置(底层原理 + 面试重点)
c++·stm32·单片机·嵌入式硬件·mcu·硬件架构·pcb
炸膛坦客1 小时前
单片机/C语言八股:(十四)const 关键字的作用(和 define 比呢?)
c语言·单片机
进击的横打1 小时前
【车载开发系列】TAU定时器
单片机·嵌入式硬件
我是海飞1 小时前
TinyUSB 移植到 STM32F407实现Audio+Midi+Cdc复合设备
stm32·单片机·嵌入式硬件
’长谷深风‘2 小时前
51单片机入门
c语言·单片机·嵌入式硬件·51单片机
张海森-1688202 小时前
cv608_aac_8k_16bit_mono编码较慢,所以存为MP4,音频数据会对不齐视频数据?
单片机