初学 请教一个小问题

来源:4-4 分支结构之嵌套if-else语句

红砖

2015-03-02 23:26

没有加 %s 输出看起来也没有错误,这个 %s 是都可以省略的吗还是说有哪里错了但不影响运行呢?

写回答 关注

1回答

  • onemoo
    2015-03-03 10:22:35
    已采纳

    都没有错。

    printf的第一个参数就是一个字符串,会被打印出来,只不过如果这个字符串中有带%号的格式化指示,那么就会把后面的参数按照%的指示打印在相应的位置上,这就是所谓的“格式化输出”。


    如果你只是单纯地想要输出一个字符串,可以直接写在第一个参数中(后面的参数就不用写了)。大家入门C语言时的那个hello world不就是直接写在printf中的嘛。

    要注意:这样的话,你的这个字符串中不能有%这样的格式化输出指示符。因为如果有的话printf就会去找后面的参数试图打印它们,显然就错了。

    所以,把printf的第一个参数写成%s、把想要输出的内容写在第二个参数上是种很"安全"的做法,可以避免上面的问题。 不过在实践中如果你要输出的内容很简单,当然是可以直接写出来的。

    红砖

    非常感谢!

    2015-03-03 12:30:51

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926028 学习 · 20793 问题

查看课程

相似问题