标准格式化输出
- %d有符号整型int输出,%ld长整型输出,
- %o以无符号八进制数形式输出整数,
- %x以无符号十六进制数形式输出整数,
- %u以十进制数输出unsigned型int数据(无符号数)。
- %c用来输出一个字符,
- %s用来输出一个字符串,
- %f用来输出实数,以float浮点型小数形式输出,
- %m.nf:输出共占m列,其中有n位小数,若数值宽度小于m左端补空格。
- %e以指数形式输出实数,
- %g根据大小自动选f格式或e格式,且不输出无意义的零。
- %p 指针,也就是指针指向的地址
指定长度字符串输出
输出指定长度的字符串,str_len为指定的长度:
printf("%.*s\n", str_len, str);
输出指定长度的字符串, 超长时不截断, 不足时右对齐:
printf("%ns", str); --n 为指定长度的10进制数值
输出指定长度的字符串, 超长时不截断, 不足时左对齐:
printf("%-ns", str); --n 为指定长度的10进制数值
输出指定长度的字符串, 超长时截断, 不足时右对齐:
printf("%n.ms", str); --n 为最终的字符串输出长度 --m 为从参数字符串中取出的子串长度
输出指定长度的字符串, 超长时截断, 不足时左对齐是:
printf("%-n.ms", str); --n 为最终的字符串输出长度 --m 为从参数字符串中取出的子串长度
标准输入
格式字符的含义同printf函数,地址列表是由若干个地址组成的表列,可以是变量的地址,或字符串的首地址。如
scanf("%d%c%s",&a,&b,str);