printf函数常量堆栈是咋样进行的
例1中,n1和n2均以double型压栈(float自动扩展为double),所以打印结果的四个数字依次为n1的低32位,n1的高32位,n2的低32位,n2的高32位。因为n1,n2值一样,所以其double表示的低位和高位也是相等的例2中,所有整形值都以int型压栈,根据printf制定的类型%d,%hd,%c取数分别取四字节,两字节,和一字节。题目的两个考点1,压栈时int以内的整形变量都以int型压栈,常数当int型。float和double都以double压栈(float自动扩展)2,printf按照指定类型(大小)去解释栈上的数值。
■网友
题目是错的涉及未定义行为结果没有意义 在大端上运行和在小端上运行结果不同
■网友
理解题主的意思,不过堆和栈是不一样的
推荐阅读
- C语言指数函数代码
- 单例模式static函数必须在头文件中实现么
- 函数|你要来试试吗?高中数学丨越做越起劲的100道高中数学函数类压轴题
- 咋用c语言或java打点出函数图
- 为啥C语言没有直接支持二进制数
- javascript函数的调用模式有哪几种
- Python中的函数、方法,例如list的append()方法和del函数
- 函数|原来……学霸是这样将数学提升到130+(附必修1-5学习重点及高中各阶段学习重点)
- 请教一个数值积分问题,怎样用matlab的quadgk函数来计算
- 请教一下以下两个贝塞尔函数积分