課程
/后端開發(fā)
/C
/C語言入門
沒有加 %s 輸出看起來也沒有錯誤,這個 %s 是都可以省略的嗎還是說有哪里錯了但不影響運行呢?
2015-03-02
源自:C語言入門 4-4
正在回答
都沒有錯。
printf的第一個參數(shù)就是一個字符串,會被打印出來,只不過如果這個字符串中有帶%號的格式化指示,那么就會把后面的參數(shù)按照%的指示打印在相應的位置上,這就是所謂的“格式化輸出”。
如果你只是單純地想要輸出一個字符串,可以直接寫在第一個參數(shù)中(后面的參數(shù)就不用寫了)。大家入門C語言時的那個hello world不就是直接寫在printf中的嘛。
要注意:這樣的話,你的這個字符串中不能有%這樣的格式化輸出指示符。因為如果有的話printf就會去找后面的參數(shù)試圖打印它們,顯然就錯了。
所以,把printf的第一個參數(shù)寫成%s、把想要輸出的內(nèi)容寫在第二個參數(shù)上是種很"安全"的做法,可以避免上面的問題。 不過在實踐中如果你要輸出的內(nèi)容很簡單,當然是可以直接寫出來的。
紅磚 提問者
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
2 回答請教一個小問題
1 回答請教一個小問題……
4 回答求教一個小問題
3 回答初學,教教我啊
2 回答請教一個問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關注慕課網(wǎng)微信公眾號
2015-03-03
都沒有錯。
printf的第一個參數(shù)就是一個字符串,會被打印出來,只不過如果這個字符串中有帶%號的格式化指示,那么就會把后面的參數(shù)按照%的指示打印在相應的位置上,這就是所謂的“格式化輸出”。
如果你只是單純地想要輸出一個字符串,可以直接寫在第一個參數(shù)中(后面的參數(shù)就不用寫了)。大家入門C語言時的那個hello world不就是直接寫在printf中的嘛。
要注意:這樣的話,你的這個字符串中不能有%這樣的格式化輸出指示符。因為如果有的話printf就會去找后面的參數(shù)試圖打印它們,顯然就錯了。
所以,把printf的第一個參數(shù)寫成%s、把想要輸出的內(nèi)容寫在第二個參數(shù)上是種很"安全"的做法,可以避免上面的問題。 不過在實踐中如果你要輸出的內(nèi)容很簡單,當然是可以直接寫出來的。