首页 > 代码库 > 简单说一下printf("%*s%s",xx,xx,xx);或printf("%*s\n",xx,xx);
简单说一下printf("%*s%s",xx,xx,xx);或printf("%*s\n",xx,xx);
大家还记得这个例子吗
1 #include "public.h" 2 3 int main() 4 { 5 int a=4; 6 printf("%4d\n",a); 7 return 0; 8 }
这个输出结果为:
4
前面有三个空格
这里的printf("%*s",1,2)和它类似
"*"表示的是占多少位置
第一个s表示的是字符串
第一个参数是占多少位,第二个参数为字符串,两个结合起来的意思就是字符串占多少位,如果不够那么多位左边用空格来补齐.可能我说的不是太明白,下面用代码来说明吧.
1 #include <stdio.h> 2 3 int main() 4 { 5 char *s="12345"; 6 char ss=‘a‘; 7 printf("%*s\n",10,s); 8 printf("%*c\n",4,ss); 9 }
###gcc text.c
###./a.out
12345
a
###
大家可以看到12345前面有五个空格,加上12345总的有10位,a前面有三个空格,加上a总的有四位.
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。