#include<stdio.h>
int main()
{
int a=3;
printf("%d"+1,a);
return 0;
}
为什么该程序的输出为“ d”?如果将此int说明符(%d)替换为float(%f),则输出为“ f”。
请解释一下此代码...
"%d" + 1
与相同&"%d"[1]
,即指向字符串中第二个字符的指针。printf
从此处开始将字符串解释为格式说明符,因此它与just相同"d"
(并且仅忽略了第二个参数)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句