发布网友 发布时间:2023-10-12 14:30
共5个回答
热心网友 时间:2024-10-21 12:49
%-4d是用于C语言输出的格式字符串,可以用于printf类函数,包括printf, sprintf, fprintf,vfprintf,vprintf,vsprintf,snprintf,vsnprintf,vasprintf等等。
各种函数中的含义是相同的,都是按照10进制形式输出整数值,输出值范围如果不足4列宽度,那么按4列宽度输出,否则按实际宽度输出。 输出结果数值在左侧,右侧用空格补足。
%-4d的四个字符每个都有各自的功能,具体如下:
1 %:格式字符串的引导标识,每个格式字符串必须以%开头。
2 -: 输出的内容左侧为有效数据,右侧为补足字符。
3 4:输出占4列宽度,不足用空格补齐,超出按实际长度输出。
4 d: 按照10进制整型输出。
下面这个例子输出两行数据,每行五个数值:
#include <stdio.h>输出结果为
1 12 123 12341212345从中可以看到其作用及缺陷。
对于低于4位的整数,可以很好的实现输出及对齐效果,比如例子中的第一列和第二列。
如果输出位数为4位,那么输出值和下一个输出间不会有分隔符,比如第二行的3 4两列,本来是2341和1,但输出的效果是一个数23411。
当数值超过4位时对齐效果会被打乱,同时与下一个输出见没有间隔。
比如第一行的第四列,输出数值为123412,与下一个12345没有分隔,同时第五列的12345本应与第二行的123456左对齐,但由于123412侵占了该位置,导致二者无法达成对齐效果。
所以%-4d这类格式输出,仅使用与数据规模在四位数以下的情况,超出则会出错。
如果在数据中存在负值,则负值仅可以为三位数或以下,因为输出的符号也同样会占一列宽度。
热心网友 时间:2024-10-21 12:49
%d是输出整数,中间的-4是指输出占用4个字符宽度,如果实际输出不足4位则右补空格,否则按实际宽度输出,如果去掉负号写成%4d,就是左补空格,其余含意一致。热心网友 时间:2024-10-21 12:50
4代表输出4个字符 -代表左对齐的意思追答以字符为对象,默认是右对齐
热心网友 时间:2024-10-21 12:50
按 整型 输出, 占4个字符宽, 数字左对齐
热心网友 时间:2024-10-21 12:51
与应用于