C語言本身並不提供輸入輸出語句,輸入和輸出操作是由函式來實現的。在C標準函式庫中提供了一些輸入輸出函式,例如,printf函式和scanf函式。在使用他們時,千萬不要誤認為他們是C語言提供的“輸入輸出語句”。printf和scanf不是C語言的關鍵字,而只是函式的名字。C提供的函式以庫的形式存放在系統中,它們不是C語言文字中的組成部分。不把輸入輸出作為C語言提供的語句的目的是使C語言編譯系統簡單,因為將語句翻譯成二進位制的指令是在編譯階段完成的,沒有輸入輸出語句可以避免在編譯階段處理與硬體有關的問題,可以使編譯系統簡化,而且通用性強,可移植性好,對各種型號的計算機都適用,便於在各種計算機上實現。各種版本的C語言函式庫是各計算機廠商針對某一型別計算機的情況編寫的,並且已編譯成目標檔案(.obj檔案)。它們在連線階段與源程式經編譯而得到的目標檔案相連線,生成一個可執行的目標程式。如果在源程式中有printf函式,在編譯時並不把它翻譯成目標指令,而是在執行階段呼叫已被連線的函式庫中的printf函式
C語言本身並不提供輸入輸出語句,輸入和輸出操作是由函式來實現的。在C標準函式庫中提供了一些輸入輸出函式,例如,printf函式和scanf函式。在使用他們時,千萬不要誤認為他們是C語言提供的“輸入輸出語句”。printf和scanf不是C語言的關鍵字,而只是函式的名字。C提供的函式以庫的形式存放在系統中,它們不是C語言文字中的組成部分。不把輸入輸出作為C語言提供的語句的目的是使C語言編譯系統簡單,因為將語句翻譯成二進位制的指令是在編譯階段完成的,沒有輸入輸出語句可以避免在編譯階段處理與硬體有關的問題,可以使編譯系統簡化,而且通用性強,可移植性好,對各種型號的計算機都適用,便於在各種計算機上實現。各種版本的C語言函式庫是各計算機廠商針對某一型別計算機的情況編寫的,並且已編譯成目標檔案(.obj檔案)。它們在連線階段與源程式經編譯而得到的目標檔案相連線,生成一個可執行的目標程式。如果在源程式中有printf函式,在編譯時並不把它翻譯成目標指令,而是在執行階段呼叫已被連線的函式庫中的printf函式