永发信息网

c语言中%c和%4c有什么区别

答案:5  悬赏:70  手机版
解决时间 2021-11-15 23:20
c语言中%c和%4c有什么区别
最佳答案
二者均是输出一个字符。
%c是只输出字符本身。
%4c输出占4位,要输出的字符在最右侧,前面有三个空格。

用一下代码测试
char c = 't';
printf("[%c]\n", c);
printf("[%4c]\n", c);
输出结果为
[t]
[ t]
可以看到后者前面是多了三个空格的。
全部回答
用于指定最小字段宽度。转换后的参数将打印不小于最小字段宽度的字段。如果有必要,字段左边(如果使用左对齐的方式,则为右边)多余的字符位置用空格填充以保证最小字宽段。
前者表示按字符格式输出,后者不仅表示按字符格式输出,而且输出的字符要占4列。如字符没有4列,左边输出空格,若超出4列,只输出前4列.
%c表示按原来的字符长度输出(就是正常输出)
%4c也是字符输入的一种格式,你只要理解这里的4是什么意思就行了。
4的意思是左补空格右对齐(4>0)
如果是-4的话那就表示右补空格左对齐(-4<0)
也就是说,%mc(m是一个常数)中,如果m>0,那就表示向左补(m-1)个空格,然后将字符输出
如果m<0,就是表示向左对齐(这就不多说了,因为%c格式每次只能输出一个字符,所以m<0时,%mc格式与%c格式是等效果的)
%mc 前面的 m为整形数字(此问题中 前者是1 后者是4)
m的意义在于 打印时 默认分配给这个字符 几个字符位置 (当然 前者是1个 后者是4个)
因为字符本来 就占有 一个位置 所以 %c 分配给字符一个打印为 是刚占满的
但是 %4c 由于 字符本身只占有 一个位置 所以还空下三个位置 (这就要用空格来填充了)
至于 从哪边 填充 c语言默认是 右对齐的 所以 在右边(指的是这四个位置的最右边 ,并非屏幕最右边, 屏幕默认是从右往左输出的。。。)打印出字符之后 会 顺势 输出三个空格来填充,
至于 如果 想 让字符靠左对齐 那么 在%mc m 前面加个负号就可以啦 这样 %-4c 就是靠左对齐啦
就是这么个意思啦
希望有帮助
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
过年换什么发型
哪个银行贷款可以不用抵押
淘宝上可以用图片搜索要查的东西吗
鲁迅的名句大全
如图,在四边形ABCD中,AB=2,∠A=∠C=60°,
开车时由5挡或4挡怎么临时停车。
官园批发市场搬迁了吗
全景音箱是什么意思?以前前置音箱还能用吗
背景墙做大了,硬包可以改小嘛
在Excel中,如何使用鼠标以递减的方式填充同一
一个长方体的油桶的体积是60。你发米,则长是
小小的身高是1.55米前面的五表示什么后面那个
昭通市出租车起步价6元,(路程在二千米以内,含
四千克比去年增加了10%小明去年体重多少千克
青岛电费尖峰平谷怎么计算 具体公式是什么怎
推荐资讯
哪位亲有les小说《风流》的完整版!
孔门十哲中为什么没有曾子
我家想开个专门做炒饭的店,能否提供些炒饭的
上个三本和上个一本的专升本哪个更好?
我已有护士执业证书,本科毕业,我在单位已辞
游戏商店哪家比较好,tap和玩go谁能来比较一
孙中山提出的振兴中华的中华指什么
表示叫的成语
黄鹤楼送孟浩然之广陵这首诗是唐代诗人李白写
收支明细表的收支差额是什么意思
从八一广场到梅林如何做车
我想要。。。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?