%u

格式转换说明符scanf,printf格式%大全/格式化输入输出

雨燕双飞 提交于 2020-03-01 09:58:14
相信不管大神还是菜鳥,都认得printf.它家还有兄弟sprintf,scanf,sscanf...$^&* 当你华丽丽的写下char c='c';printf("char=%d",c);的时候,一切都还是那么美好. 不过当你声明一个char buf[2];然后sscanf("30000","%d",buf);的时候,就不那么好玩了. 本以为2个字节足够装下32767以内的数字,却把内存写爆了. 此处关键就是格式符乱写产生的问题. 此时最想要的就是一份完整的可用格式表. 苦于每次都只能找到零星点点还不全,本来打算在此收集做一个全集,在收集过程中发现了一个完整版本转来 格式转换说明符 printf() / scanf()                   表一 转换说明符及作为结果的打印输出 转换说明 输 出 %a 浮点数、十六进制数字和 p- 记数法 (C99) %A 浮点数、十六进制数字和 P- 记数法 (C99) %c 一个字符 %d 有符号十进制整数 %e 浮点数、 e- 记数法 %E 浮点数、 E- 记数法 %f 浮点数,十进制记数法 %g 根据数值不同自动选择 %f 或者 %e 。 %e 格式在指数小于 -4 或者大于等于精度时使用 %G 根据数值不同自动选择 %f 或者 %E 。 %E 格式在指数小于 -4 或者大于等于精度时使用 %i 有符号十进制整数 ( 与 %d