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

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

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

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

简单回答是能。

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

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

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

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

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

相关推荐
m0_752753121 小时前
单片机基础知识
单片机·51单片机
天空'之城1 小时前
单片机基础核心知识点汇总(三十六)
单片机·嵌入式硬件
xx~t7 小时前
嵌入式——单片机2
嵌入式硬件·学习·51单片机·串口·蜂鸣器
JNX_SEMI7 小时前
OC5138T 8V~100V超宽输入降压恒流驱动:覆盖12V汽车至72V电动车全场景
单片机·嵌入式硬件
一直C7 小时前
DS18B20数字温度传感器超详细学习笔记|51单片机单总线通信
51单片机·ds18b20·one-wire
xx~t8 小时前
嵌入式——51单片机3
linux·c语言·嵌入式硬件·51单片机
sunoo-2298 小时前
【51单片机实战】温控下位机完整实现:DS18B20采集 + 自定义二进制串口协议 + PWM声光告
笔记·学习·51单片机·串口
智购科技无人售货机工厂8 小时前
2026自动售货机AI智能体架构:从47个小模型到33.7亿Token的工程实践~YH
android·人工智能·驱动开发·单片机·pandas
单片机仿真设计9 小时前
【proteus仿真】基于 STM32 单片机太阳能双轴追踪系统 Proteus 仿真设计(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus·课设
Lzh编程小栈10 小时前
STM32 DMA深度解析|原理、完整工作流程、寄存器、中断联动,嵌入式面试高频考点(F1系列)
c语言·stm32·单片机·mcu·面试