【问题标题】:sprintf, printf and format specifierssprintf、printf 和格式说明符
【发布时间】:2011-11-23 15:36:42
【问题描述】:

我无法理解这行代码的作用:

    sprintf(obj, "%s.o", root);

obj 和 root 都是字符缓冲区,从我读到的 root 基本上是复制到 obj 中的? 我不确定“%s.o”在做什么。 %s 是指定一个 String 但 .o?

感谢您的帮助

【问题讨论】:

  • 是否只是在根的末尾添加 .o 并将整个内容移动到 obj 中?

标签: c printf


【解决方案1】:

%s 将替换为root 的内容,然后是字符串的.o 部分,这只是一个“附加”文本。例如,如果root 有“文件”,则obj 将被设置为“file.o”。

【讨论】:

  • 严格来说,只会复制到(但不包括)第一个 0 字节的内容。
  • 也许这太严格了...... :-) 但感谢您指出
猜你喜欢
  • 2012-05-17
  • 2012-05-17
  • 1970-01-01
  • 2011-03-11
  • 1970-01-01
  • 2017-11-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多