課程
/后端開發
/C
/C語言入門
printf("我今年%d歲!\n");/*刪除了后面的,age*/
2015-10-13
源自:C語言入門 2-3
正在回答
打印出的內容,是不是在%d的位置上有無關的數字?
printf的第一個參數是字符串,printf的功能就是輸出這個字符串,并且如果字符串中有格式化指示符(%d %f之類的),就按照指示將后面的參數放到相應的位置上一并輸出。
你這里字符串中有一個格式化指示符%d,那么函數就會試圖把后面的參數按照整型來輸出。雖然你沒有傳入后續的參數,不過printf函數還是會去后面找,并且可能輸出一些亂七八糟的無關內容。?
至于為什么沒有傳入其他參數printf還是會打印,這原因比較復雜,涉及到函數調用細節,你目前不用考慮。 你只需記住:調用printf時一定要按照格式化指示符來傳入相應類型和數量的參數。否則就會出問題。
Backkom 提問者
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
2 回答printf括號中最后面\n是什么意思
1 回答為什么else后面加了括號之后值就變了
3 回答為什么示例的printf在do的大括號里,而題目的printf在大括號外
2 回答數組后面為什么不加括號
1 回答printf的括號中不能是單引號嗎,因為單引號是 char?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-10-13
打印出的內容,是不是在%d的位置上有無關的數字?
printf的第一個參數是字符串,printf的功能就是輸出這個字符串,并且如果字符串中有格式化指示符(%d %f之類的),就按照指示將后面的參數放到相應的位置上一并輸出。
你這里字符串中有一個格式化指示符%d,那么函數就會試圖把后面的參數按照整型來輸出。雖然你沒有傳入后續的參數,不過printf函數還是會去后面找,并且可能輸出一些亂七八糟的無關內容。?
至于為什么沒有傳入其他參數printf還是會打印,這原因比較復雜,涉及到函數調用細節,你目前不用考慮。 你只需記住:調用printf時一定要按照格式化指示符來傳入相應類型和數量的參數。否則就會出問題。