【问题标题】:How do I change only one part of the string with variable values如何仅使用变量值更改字符串的一部分
【发布时间】:2019-05-26 15:01:14
【问题描述】:

我有一个问题,关于如何通过变量a的值来改变文本向量的“%d”。

int a = 3;
char text[]= "How I change this value: %d"

然后打印出来:

我如何改变这个值:3

【问题讨论】:

  • printf(text, a); ?
  • 欢迎来到 Stack Overflow!请告诉我们你尝试了什么以及它是如何失败的。请阅读How to Ask页面!!另外:idownvotedbecau.se/noattempt
  • 我投票决定将此问题作为离题结束,因为我没有看到任何尝试,而且 SO 不是代码编写服务

标签: c string char


【解决方案1】:

snprintf 是您要查找的内容,如果您想将结果保存在变量中。 printf 将打印到 stdout(您的终端)。 你会发现一个很好的描述the man-page

在您的情况下,以下代码将起作用:

int a = 3;
char text[]= "How I change this value: %d";
char buf[MAX_LEN];
snprintf(buf, MAX_LEN, text, a);

现在,缓冲区buf 将保存字符串"How I change this value: 3"

【讨论】:

    【解决方案2】:

    既然你只想打印它:​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

    printf(text, a);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-31
      • 1970-01-01
      • 1970-01-01
      • 2014-12-24
      • 2021-02-19
      • 2016-03-02
      • 2017-10-29
      • 1970-01-01
      相关资源
      最近更新 更多