C语言中格式化字符串
0. printf()函数
printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出
信息。在编写程序时经常会用到此函数。printf()函数的调用格式为:
printf("<格式化字符串>", <参量表>);
其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原
样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符,
用来确定输出内容格式。
参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出
参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想
不到的错误。
format-string 的形式:
%[flags][width].[precision] [{h|l|i|232|264}] type
[flags]----->{ - , + , 0, # , blank }
left align , sign, 补0 , 输出前加空格
[width]----->输出的最少字符数
[precision]----->
{c,C :无影响。
{d,i,u,o,x,X :输出字符的最少个数,如果个数不够,则在前面补0。
{f :指定'.'后输出字符个数,如果precision为0或无,则无小数。
{s,S :输出字符的最大个数,缺省输出到NULL结束。
[{h|...|264}]---->指定后面参数的大小。
1. 格式化规定符
Turbo C2.0提供的格式化规定符如下:
━━━━━━━━━━━━━━━━━━━━━━━━━━
符号 作用
──────────────────────────
%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%0 无符号以八进制表示的整数
%g 自动选择合适的表示法
━━━━━━━━━━━━━━━━━━━━━━━━━━
说明:
(1). 可以在"%"和字母之间插进数字表示最大场宽。
例如: %3d 表示输出3位整型数, 不够3位右对齐。
%9.2f 表示输出场宽为9的浮点数, 其中小数位为2, 整数位为6,
小数点占一位, 不够9位右对齐。
%8s 表示输出8个字符的字符串, 不够8个字符右对齐。
如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。
但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实际整数位输出;
若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。
另外, 若想在输出值前加一些0, 就应在场宽项前加个0。
例如: %04d 表示在输出一个小于4位的数值时, 将在前面补0使其总宽度
为4位。
如果用浮点数表示字符或整型量的输出格式, 小数点后的数字代表最大宽度,
小数点前的数字代表最小宽度。
例如: %6.9s 表示显示一个长度不小于6且不大于9的字符串。若大于9, 则
第9个字符以后的内容将被删除。
(2). 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。
例如: %ld 表示输出long整数
%lf 表示输出double浮点数
(3). 可以控制输出左对齐或右对齐, 即在"%"和字母之间加入一个"-" 号可
说明输出为左对齐, 否则为右对齐。
例如: %-7d 表示输出7位整数左对齐
%-10s 表示输出10个字符左对齐
2. 一些特殊规定字符
━━━━━━━━━━━━━━━━━━━━━━━━━━
字符 作用
──────────────────────────
/n 换行
/f 清屏并换页
/r 回车
/t Tab符
/xhh 表示一个ASCII码用16进表示,
其中hh是1到2个16进制数
━━━━━━━━━━━━━━━━━━━━━━━━━━
讨论:例如串口接收单片机发送的16进制的数据,则我们要这样接收:
byte buf[56];
recv(comm->handle,buf);
buf[strlen(buf)]=0;//打上结束标志
//将接收的数字转化为16进制串
char *pstr=new char[256];
byte *pb=&buf[0];
while(!pb)
sprintf(pstr++,"%02x",*pb++);
C语言中格式化字符串相关推荐
- c语言中格式化字符串系列函数包括,解析C语言中常用的格式化输入、输出函数...
fprintf(格式化输出数据至文件) 这个函数的功能类似于文件操作函数 fwrite();通过一个文件描述符将数据写入该文件描述符所指向的文件中. 函数定义: int fprintf(FILE * ...
- python中格式化字符串_Python中所有字符串格式化的指南
python中格式化字符串 Strings are one of the most essential and used datatypes in programming. It allows the ...
- c语言中用于获取字符串长度的函数是,C语言中求字符串长度的函数的几种实现方法...
C语言中求字符串长度的函数的几种实现方法 1.最常用的方法是创建一个计数器,判断是否遇到'\0',不是'\0'指针就往后加一. int my_strlen(const char *str) { ass ...
- c语言字符串前加l,【C】 30_C语言中的字符串
字符串的概念 字符串是有序字符的集合 字符串是程序中的基本元素之一 C 语言中没有字符串的概念 C 语言中通过特殊的字符数组模拟字符串 C 语言中的字符串是以 '\0' 结尾的字符数组 字符串与字符数 ...
- python字符串截取方法_如何使用python语言中的字符串方法截取字符串
在我们使用python语言中的字符串方法时,可能会判断某个字符串是否以什么开头,可以使用什么进行截取等.下面利用几个实例说明字符串中的方法的用法,操作如下: 工具/原料 python 截图工具 方法/ ...
- 【C语言进阶深度学习记录】二十六 C语言中的字符串与字符数组的详细分析
之前有一篇文章是学习了字符和字符串的,可以与之结合学习:[C语言进阶深度学习记录]十二 C语言中的:字符和字符串 文章目录 1 字符串的概念 1.1 字符串与字符数组 1.2 字符数组与字符串代码分析 ...
- c语言中字符串数组应用,C语言中字符变量字符串和字符数组应用.doc
C语言中字符变量字符串和字符数组应用 字符变量(type`char`?字符串(string)和字符数组(type`char`arrary)是C语言中非常重要的结构成分,也是应用编程中常发生混淆?导致错 ...
- c语言字 字符串转换成数组_C语言学习教程之详解C语言中的字符串数组
在C语言当中,字符串数组可以使用: char a[] [10]; 或者 char *a[]; 表示 第一种表示方式固定了每个字符串的最大大小.第二种没有字符串的大小限制. #include 总结 以上 ...
- c语言中字符怎么表示6,6、C语言中的字符串
一.C语言中的字符串 字符串是一种重要的数据类型,但是C语言并没有显示的字符串数据类型,不像java有String ,OBC有NSString等等.所以C语言中的字符串一般以字符串常量的形式出现或者存 ...
最新文章
- centos和ubuntu安装卸载软件(rpm/dpkg)
- 阿里云系列——4.网站备案后续(详细步骤)---2015-11.12
- CORE协议的MATLAB仿真
- 厉害了,淘宝千万并发,14 次架构演进…
- 【Pygame小游戏】剧情流推荐:什么样的游戏才能获得大家的喜欢呢?(魔鬼恋人、霸总娇妻版)
- 跟着邓神 3 天掌握 Go 语言基础(免费)
- Django用户注册、登录、注销(一)
- PAT:1032. Sharing (25) AC
- 音视频开发(15)---IPC+NVR+路由器+ffmpeg+nginx实现网页/Android/IOS的HLS直播
- 播种数据MVC 6 .NET Core应用程序
- 【对讲机的那点事】无线电对讲系统在隧道中的应用
- 10分钟学会写一个简单的Mysql存储过程
- 平面设计常用计算机工具,平面设计中常用的计算机软件及其具体使用
- Axure9.0元件库的使用
- python判断ip是否可以ping通
- 企业网站建设要注意的四大准则
- Red Giant VFX Suite for mac(电影级视觉特效插件)
- Express 框架的使用(详细)
- 百度笔试题面试题总结1
- 微信翻译出 Bug 上热搜,程序员又背锅?!