首页 > 编程知识 正文

格式化打印参数,c语言printf是关键字吗

时间:2023-05-03 09:21:05 阅读:174972 作者:4305

可在/linux上进行gcc测试/

printf () (033 ) 47; 31mhelloworld(033[5m ' );

47是字的背景色,31是字体的颜色,hello world是字符串。 后面的33[5m是控制代码。

颜色代码:

QUOTE:

字背景颜色范围:4049字颜色:3039

40:黑30:黑

41:红31:红

42:绿色32:绿色

43:黄3:黄

4:蓝色34:蓝色

45:紫色35:紫色

46:深绿色36:深绿色

47:白色37:白色

ANSI控制代码:

QUOTE:

33[0m关闭0m所有属性]

(033 )设定1m高亮度

(3[4m下划线]

(033 )闪烁5m

(033 ) 7m翻转

(033 ) 8m消隐

(033 ) 30m(033 ) 37m设置前景色

(033 ) 40m(033 ) 47m设置背景色

33[nA光标向上移动n行

3[nB光标将向下移动n行

33[nC将NC光标向右移动n行

33[nD将nd光标向左移动n行

(33[y; 设置xH光标位置

(033 ) 2j透明屏幕

33[K清除从k光标到行尾的内容

33[s保存光标位置

33[u撤消光标位置]

(33[? 25l隐藏光标

33[? 25h显示光标

由此,可以在某个时刻实现动态输出。

printf格式控制的完整格式:

% - 0 m.n l或h格式的字符

对构成格式说明的各项目进行说明。

% :表示格式说明的开始符号,不可缺少。

- :有-表示左对齐输出,省略表示右对齐输出。

)有0 )时表示指定空位为0,省略时表示没有指定空位。

(n ) m是指域名宽度,即对应的输出项目在输出设备中所占的字符数。 n指的是精度。 说明输出实数的小数位数。 如果指定了n,则隐式精度为n=6位。

l或h:l对于整数型指长型,对于实型指双型。 h用于将整数格式字符修改为短整型。

格式字符

格式字符指定输出项目的数据类型和输出格式。

(d格式)用于输出十进制整数。 这些用法包括:

%d :以整数数据的实际长度输出。

%md:m是指定输出字段的宽度。 数据位数小于m时,在左端填补空格,大于m时,以实际位数输出。

% LD :输出长数据。

)格式)以无符号的8进制格式输出整数。 长整数可以以“%lo”格式输出。 也可以指定以“%mo”格式输出字段宽度。

例如:

main () )

{int a=-1;

printf('%d,%o ',a,a );

}

执行结果:-1,177777

程序分析:-1在存储器单元中(作为补码存储) 1111111111111111111 )转换为2、8进制时) 177777 ) 8。

(x格式)以无符号的16进制格式输出整数。 长整数可以以“%lx”格式输出。 也可以指定以“%mx”格式输出字段宽度。

) u格式)以无符号10进制格式输出整数。 长整数可以以“%lu”格式输出。 也可以指定以“%mu”格式输出字段宽度。

) c格式)输出一个字符。

) s格式)用于输出字符串。 有几个用法

%s :例如,printf('%s”,“CHINA”)将输出“CHINA”字符串。 不包括双引号。

%ms :输出的字符串占m列,如果字符串本身的长度大于m,则突破获得m的限制,输出所有字符串。 如果字符串长度小于m,则向左填充空格。

%-ms :如果字符串长度小于m,则字符串在m列范围内靠左,并在右边填充空格。

%m.ns :输出占m列,但只取字符串的左端n个字符。 这n个字符输出在m列的右侧,左边有空格。

%-m.ns :其中m、n的含义相同,n个字符的输出位于m列范围的左侧,右边填充空格。 nm时,自动取n的值,保证n个字符正常输出。

) f形式)用于以小数形式输出实数(包括单精度、双精度)。 这些用法包括:

%f :不指定宽度,整数部分全部输出小数6位并输出。

%m.nf :输出共占m列,其中有n位小数。 例如,数值宽度比m的左端小来填充空间。

%-m.nf :输出共占n列,其中有n位小数。 例如,如果数字的宽度小于m的右端,则填充空格。

) e格式)以指数形式输出实数。 可以使用以下格式:

%e )数字部分(也称为尾数)输出6位小数,指数部分包含5位或4位。

%m.ne和%-m.ne:m、n和“-”的字符含义与前面相同。 这里,n表示数据数字部分的小数位数,m表示输出数据整体所占的宽度。

) g格式)自动选择f格式或e格式中较短的一个输出,不输出无意义的零。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。