printf输出格式中出现%*s是什么意思啊??? printf("%*s%s\n","hello
printf输出格式中出现%*s是什么意思啊???printf("%*s%s\n","helloword","","hello");...
printf输出格式中出现%*s是什么意思啊???
printf("%*s%s\n","hello word"," ","hello"); 展开
printf("%*s%s\n","hello word"," ","hello"); 展开
推荐于2016-07-23
展开全部
printf("%*s%s\n","hello word"," ","hello");
这种完全就是写错了,聪明一点的编译器(例如gcc)会提示:
field width specifier '*' expects argument of type 'int', but argument 2 has type 'char *'
不过 printf("%*s", len, str) 是有这种写法的,这时 printf 额外接受一个参数作为域宽。如果 str 的长度小于 len ,会用空格使长度补足。
展开全部
输出类型
追问
结果是什么?这个输出类型是什么意思?
追答
%*s应该是指定第一个量,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这里如果后面只有两个参数,*没有意义,如果有三个参数,*代表打印数据长度
比如
printf("%*s%s", 10, "a", "b");相当于:
printf("%10s%s", "a", "b");
比如
printf("%*s%s", 10, "a", "b");相当于:
printf("%10s%s", "a", "b");
追问
自己写程序输出结果是一直打印空~原因是什么呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询