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

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

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

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

简单回答是能。

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

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

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

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

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

相关推荐
振南的单片机世界34 分钟前
HAL_Delay(1000)真准吗?SysTick的1ms基准从哪来
arm开发·stm32·单片机·嵌入式硬件
项目題供诗4 小时前
STM32-ADC模数转换器(十八)
stm32·单片机·嵌入式硬件
_YouziTech_5 小时前
【STM32】U8G2图形库应用--菜单设计与开发
stm32·单片机·嵌入式硬件·oled·开机动画·图形库
国科安芯6 小时前
商业航天级抗辐照全双工RS-485/RS-422收发器ASM491S2Y的技术特性与应用研究
运维·网络·单片机·嵌入式硬件·安全·架构·安全性测试
国科安芯6 小时前
ASP7A84AS高精度抗辐照线性稳压器技术特性与应用分析
单片机·嵌入式硬件·安全·架构
恶魔泡泡糖6 小时前
stm32F103C8T6标准库串口发送之发送字节2
stm32·单片机·嵌入式硬件
fffzd7 小时前
STM32:时钟树与时钟源
单片机·嵌入式硬件·嵌入式软件·时钟树·时钟源
嵌入式小站7 小时前
STM32 零基础可移植教程 22:SPI 入门,先读一个外部 Flash
stm32·单片机·嵌入式硬件
崇山峻岭之间7 小时前
单片机USB 鼠标键盘实验
单片机·嵌入式硬件·计算机外设
大卡片7 小时前
单片机第二次答辩
单片机·嵌入式硬件