有人可以解释
difference between the %h
and %I
吗?两者都被描述为“小时(01..12)”,并且相同的秒%s和%S?这背后有什么“奇怪”的功能吗?有什么重复的原因是什么? 最佳答案 %h和%I以及%s和%S是相同的.
在代码中它看起来像这样:
case 'h':
case 'I':
hours_i= (l_time->hour%24 + 11)%12+1;
length= (uint) (int10_to_str(hours_i, intbuff, 10) - intbuff);
str->append_with_prefill(intbuff, length, 2, '0');
break;
case 'S':
case 's':
sprintf(intbuff,"%02d",l_time.second);
str->append(intbuff);
break;
即使早在2003年6月20日发布的版本3.23.57(我能找到的最古老的源代码存档),它们也是相同的.