printf()函数的不熟悉的地方

       一.格式控制符/////全屏浏览函数

  1. %d, %i输出做用同样,表示有符号十进制数spa

  2. %g,%G根据数据的大小确认输出时%e仍是%f格式字符串

  3. 输出的打印项目能够是变量,常量,表达式变量

  4. .%a, %A,用来输出浮点数的十六进制数和P-计数法数据

  5. %x使用无符号的十六进制数项目

    二.转换修饰说明符co

  6. %-d:输出的数据左对齐字符

  7. %-20d:输出的数据占用20字段的宽度,而且若是字符宽度不知足20的话,自动左对齐,其他空格补齐浮点数

  8. %+d:显示正负号错误

  9. % d:正数前面空一格,负数按%d输出,主要是方便正数和负数的对齐

  10. %020d:输出整数占用20个字段的宽度,且空格地方用0补齐

    三.不匹配的转换形成的后果

  11. short num = 336;printf("%c", num) //输出结果为 p,由于字符只须要一个字节,而num占用2个字节,而printf()输出时只擦看存放336的一个字节,至关与256%336的结果对应的字符;

  12. int num = 65618;printf(“%hd”, num) //由于结果只须要2个字节,二num有4个字节,而printf()输出时只擦看存放65618的2个字节,至关于65536%65618的结果;

  13. short num = -336;printf(“%hu”, num) // 输出结果为为65200,由于在系统中有符号类型,65535表明-1,65534-2,因此-336由65535-336来表示,即65200来表示;

    四·.printf()函数的返回值问题

  14. 当printf()成功打印出一内容后,会返回双引号中的字符数目,包括空格和不可见的换行字符,若是没有成功打印会返回一个负数 好比 int shu, a = 5;shu = printf(“%d”, a);打印完后shu = 2;

  15. 当printf()函数中一行的内容太多时,若是须要换行继续写的话必须遵行一下规则:1.printf(“%d dadadaada”,

                                                                                                                                                          a)或者逗号放在a前面,a)也是是正确的,而printf(“%d dadada

                                                                                                                                                                                 da”,a)是错误的,除非在(“%d dadada后面加一个 \ 在换行则说明上下是链接在一块儿的,且第二行必须左顶格写,不然空格也要算在里面

                                                                                                                                   2.使用多个printf()函数

                                                                                                                                   3.多个字符串分别采用”“来链接,好比printf(”dada“

                                                                                                                                                                                                           ”wawa“)也是能够的,缘由,双引号间的任何字符都不在起做用,要想空格必须在双引号内

  16. 输出的时候格式符的类型必须和变量配对,不然有问题

相关文章
相关标签/搜索