sprintf函数的用法

2023-11-09

说明1:该函数包含在stdio.h的头文件中,使用时需要加入:#include <stdio.h>

说明 2:sprintf与printf函数的区别:二者 功能相似,但是 sprintf函数打印到字符串中,而printf函数打印输出到屏幕上。 sprintf函数在我们完成其他数据类型转换成字符串类型的操作中应用广泛。
说明3:sprintf函数的格式: int sprintf( char *buffer, const char *format [, argument,...] );
除了前两个参数固定外,可选参数可以是任意个。buffer是字符数组名;format是格式化字符串(像:"=%6.2f%#x%o",%与#合用时,自动在十六进制数前面加上0x)。只要在printf中可以使用的格式化字符串,在sprintf都可以使用。其中的格式化字符串是此函数的精华。
说明4:可以控制精度
char str[20];
double f=14.309948;
sprintf(str,"%6.2f",f);

说明5:可以将多个数值数据连接起来。
char str[20];
int a=20984,b=48090;
sprintf(str,"=m",a,b);
str[]="20984 48090"

说明6:可以将多个字符串连接成字符串
char str[20];
char s1={'A','B','C'};
char s2={'T','Y','x'};
sprintf(str,"%.3s%.3s",s1,s2);

%m.n在字符串的输出中,m表示宽度,字符串共占的列数;n表示实际的字符数。%m.n在浮点数中,m也表示宽度;n表示小数的位数。
说明7:可以动态指定,需要截取的字符数
char s1={'A','B','C'};
char s2={'T','Y','x'};
sprintf(str,"%.*s%.*s",2,s1,3,s2);
sprintf(s, "%*.*f", 10, 2, 3.1415926); 

说明8:可以打印出i的地址: sprintf(s, "%p", &i); 相当于 sprintf(s, "%0*x", sizeof(void *), &i);
说明9:sprintf的返回值是字符数组中字符的个数,即字符串的长度,不用在调用strlen(s)求字符串的长度。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sprintf函数的用法 的相关文章

  • ubuntu18.04 littlevgl运行环境搭建

    1 下载代码 git clone https gitclone com github com littlevgl pc simulator git cd pc simulator git submodule update init 2 编译
  • Line-in和Mic-in的区别和使用及Line-out

    Line in和Mic in的区别 http blog 163 com why ann 2001 blog static 331376200821391621467 我们的电脑声卡上 一般都会有Line in和Mic in两个接口 翻译成中
  • GDB 命令脚本的编写以及调试技巧汇总

    在GDB调试程序的时候 如果程序带有很长的参数列表 或者调试命令本身很长 需要频繁启动调试会话时 频繁输入参数或者命令严重拖慢调试节奏 这里记录一个GDB非常有用的参数 x 可以将调试参数和调试命令以调试脚本的形式提供给GDB调试会话 这样
  • 正点原子IMX6ULL阿尔法USB摄像头的远程调用(四)Python的实现

    话不多说 先上界面 前情提示 做这个例子 需要USB摄像头已经调好了 同时电脑上已经安好了python pyqt5 opencv等 下面演出开始吧 直接上代码 源代码直接上 coding utf 8 Form implementation
  • 【从零到一的Raspberry】数莓派踩坑实录(二) 内核编译配置和模块安装

    写在前面 本次作业具有挑战性 不过不管哪一环节出错了 你都要知道如何把它还原到初始状态 这样你就不是在危险地操作 而有还原的保障 因此在第0节我会介绍一种还原数莓派系统的方法 这样你就可以在内核无法运行时还原到默认系统 后面从第一章开始 带
  • 基于树莓派的空气监测系统(1)项目介绍

    基于树莓派的空气监测系统 1 项目介绍 项目开发使用的知识点包括 Qt程序设计 Python编程 文件编程 串口编程 树莓派驱动程序开发 嵌入式系统学习 视频地址 嵌入式学习资料 资料地址 项目参考代码 下载 编译运行环境x86平台 程序中
  • 【记录】看门狗定时器基础

    原文 概要 我们平时使用的电脑 由于某种原因导致动作异常 反复执行指定外的操作 或者没有任何反应 这种情况被认定为程序失控 out of control 或者程序中止了 对于用户而言 可以知道程序出现了异常 需要采取一定的措施 对于嵌入式系
  • 关于操作系统学习路线分析

    自己学习操作系统的时间也挺长了 虽然目前的成果还不是特别明显 但是在这段时间中还是学习了很多 今天想在这里和大家分享一下如何学习操作系统 以及如何制定学习操作系统的路线 以下是针对有过编程经历的 1 首先操作系统是人机交互的代理 那么作为操
  • 嵌入式系统之cyber-physical system

    嵌入式系统在生活中随处可见 之前的嵌入式做法一般都是在一些现成的板子上移植linux做一些剪切加一些传感器写一些设备驱动 都是随着时代的发展 嵌入式不再是之前大家认为的那种单片机原理 其实现在很多人都把搞单片机弄的那一套认为是嵌入式 当然业
  • Linux实时调度策略(SCHED_RR)和CFS(SCHED_OTHER)之间的区别

    本文试图从直观角度 说明SCHED RR调度策略和SCHED OTHER调度策略之间的区别 在Linux上 SCHED OTHER和SCHED NORMAL的意思相同 它们都是指的CFS调度策略 只不过 在内核中 CFS定义为SCHED N
  • 通过libusb读取鼠标数据

    include
  • Android adb等 获取root权限

    Android adb 获取root权限 1 自己编译的Android 中 adb shell后 自动获取root权限 即显示 而不是 方法 修改 default prop 把ro secure设为0 persist service adb
  • 正点原子IMX6ULL阿尔法USB摄像头的远程调用(三)USB摄像头的连接与使用

    终于轮到摄像头了 IMX6ULL支持USB摄像头 直接插在USB口上就可以了 不过 下面介绍的方案要在Python中调用USB摄像头的数据 所以在IMX6ULL中需要移植MJPG Streamer 这个不太难 百度一下就OK 迅为的方案就可
  • sprintf函数的用法

    说明1 该函数包含在stdio h的头文件中 使用时需要加入 include
  • Linux中gcc的常用命令

    目录 一 简介 二 简单编译 1 预处理 2 编译 3 汇编 4 连接 5 执行 三 多个程序文件的编译 四 检错 五 库文件连接 1 编译成可执行文件 2 链接 3 强制链接时使用静态链接库 六 小结 七 参考文献 一 简介 GCC 是编
  • 基于STM32的OLED屏显示AHT20采集的温湿度数据

    文章目录 一 实现温湿度数据采集并通过串口显示 二 实现将温湿度采集数据显示到OLED屏 1 代码下载 2 部分代码的编写 3 编译并烧录 4 运行结果 三 小结 四 参考链接 本实验使用的工具 STM32野火mini开发板 AHT20温湿
  • Clion2021的安装并实现stm32F103点亮LED

    CLion是Jetbrains公司旗下新推出的一款专为开发C C 所设计的跨平台IDE 它是以IntelliJ为基础设计的 同时还包含了许多智能功能来提高开发人员的生产力 CLion专为使用C和C 以及 Kotlin Native Rust
  • 基于Keil创建汇编语言的STM32工程

    本文是在Keil嵌入式开发环境下完成一个基于STM32汇编程序的编写 学习在没有硬件条件下进行仿真调试 观察ARM寄存器的变化状况 记录过程生成的 hex文件各段的大小 了解Hex文件格式及其前8个字节内容含义 文章目录 一 新建工程 二
  • 平头哥(T-Head )开源RISCV处理器OpenC906 RTL仿真

    在过去的几年里 阿里集团平头哥陆续推出了几款RISCV处理器 有些处理器已经在产业界得到了应用 比如在某志的D1处理器中 就嵌入了平头哥的玄铁C906内核为 芯 RISCV虽然是一个开放标准 并且网络上也不乏一些开源核的RTL实现 但是商用
  • HT1621B液晶驱动(附电路图)

    最近做了一个项目用到了HT1621 电路图 datasheet code HT1621B datasheet include ht1621 h void ht1621 send high order data UCHAR data UCHA

随机推荐