当前位置: 首页 > news >正文

2025-03-23 学习记录--C/C++-C语言 sprintf()实现将多个值按指定格式拼接成字符串

C语言 sprintf()实现将多个值按指定格式拼接成字符串

举个例子 🌰:将字符串 “m” 与数字 012 动态拼接成 “m0”、“m1”、“m2”:👇🏻

#include <stdio.h>  // 包含标准输入输出库,用于使用输入输出函数(如 printf 和 sprintf)
#include <string.h> // 包含字符串处理函数库,用于使用字符串相关函数(如 strlen)

int main() {
    char base[] = "m";  // 定义一个字符数组 base,初始化为字符串 "m"
    char result[10];    // 定义一个字符数组 result,用于存储拼接后的结果,大小为 10

    for (int i = 0; i < 3; i++) {  // 使用 for 循环遍历数字 0、1、2
        sprintf(result, "%s%d", base, i);  // 使用 sprintf 将 base 和数字 i 拼接成字符串,并存储到 result 中
        printf("%s\n", result);  // 输出拼接后的字符串 result,并在末尾换行
    }

    return 0;  // 程序正常结束
}
m0
m1
m2

代码说明 📚

  • 1、基础字符串:🎀

    • base 是基础字符串 “m”。
  • 2、结果字符串:🎀

    • result 是用于存储拼接结果的字符数组,大小为 10,确保足够容纳拼接后的字符串。
  • 3、循环拼接:🎀

    • 使用 for 循环遍历数字 012

    • 使用 sprintfbase 和当前数字 i 拼接成字符串,并存储到 result 中。

    • 使用 printf 输出拼接后的字符串。

  • 4、sprintf 函数:🎀

    • sprintf 是格式化字符串函数,可以将多个值按指定格式拼接成字符串。

    • %s%d” 是格式化字符串,%s 表示字符串,%d 表示整数。

扩展:动态拼接更多数字 🪜

如果需要拼接更多数字(例如 09),只需修改循环条件即可:

for (int i = 0; i < 10; i++) {  // 遍历数字 0 到 9
    sprintf(result, "%s%d", base, i);
    printf("%s\n", result);
}
m0
m1
m2
m3
m4
m5
m6
m7
m8
m9

注意事项 💥】sprintf 的格式化字符串 “%s%d” 中,%s%d 的顺序和类型必须与实际参数匹配。

在这里插入图片描述

相关文章:

  • 国产达梦(DM)数据库的安装(Linux系统)
  • 设计模式:创建型、结构型、行为型
  • Linux 系统运行 Android 应用的几种方案
  • 为什么EasyExcel能处理大数据量而不内存溢出,EasyExcel原理
  • Linux__之__基于UDP的Socket编程网络通信
  • LLaMA-Factory微调大模型
  • 网络爬虫-4:jsonpath+实战
  • 一个轻量级的 SQLite ORM 工具包
  • c++测试题
  • C# 反射(Reflection)详解
  • Java EE(16)——网络原理——TCP协议解析二
  • 深度解析历年蓝桥杯算法题,助力提升编程技能
  • ngx_http_core_server_name
  • 文献分享: ColXTR——将ColBERTv2的优化引入ColXTR
  • [动手学习深度学习]28. 批量归一化
  • AF3 Rotation类的map_tensor_fn 方法解读
  • Oracle 23ai Vector Search 系列之1 架构基础
  • RT-Thread CI编译产物artifacts自动上传功能介绍
  • python socket模块学习记录
  • KPMG 与 SAP Joule:引领 AI 驱动咨询的新时代
  • 被前男友泼汽油致残后,一个女孩经历的双重灼烧
  • 国务院办公厅印发《国务院2025年度立法工作计划》
  • 美国务卿鲁比奥将前往土耳其参加俄乌会谈
  • 上海杨浦:鼓励龙头企业与高校共建创新联合体,最高支持200万元
  • 复旦大学与上海杨浦共建市东医院
  • 中国创面修复学科发起者之一陆树良教授病逝,享年64岁