ลำโพง 1: ดังนั้นฉันรู้สึกเหมือนฉันมีแนวโน้มที่จะ เขียน printf โลก hello หรือ printf สวัสดีเปอร์เซ็นต์ค่อนข้างมักจะอยู่ในบริบท ที่ฉันต้องการที่จะพิมพ์ออกมา สตริงบางครั้งขอให้ ส่วนหนึ่งของผู้ใช้สตริงที่ ดีมันจะไม่ดีถ้าเราสร้าง หน้าที่ของเราเองที่เรียกว่า พูดชื่อพิมพ์ที่มีจุดมุ่งหมายในชีวิต เป็นเพียงการพิมพ์สวัสดีจุลภาค ดังนั้นและดังนั้นโดยการยอมรับเพื่อให้และเพื่อให้ เป็นอาร์กิวเมนต์ฟังก์ชันที่? เราสามารถประกาศการทำงานของเราเอง เช่นเดียวกับที่เราสามารถทำได้ใน Scratch ดังต่อไปนี้ ในคำอื่น ๆ คิดว่าฉันต้องการที่จะ printf ชื่อของคุณและจากนั้นขอให้ผู้ใช้ สำหรับชื่อของเขาหรือเธอด้วยเชือก s เท่ากับ GetString แล้วผมต้องการที่จะเรียกใช้ฟังก์ชัน พิมพ์ชื่อที่เรียกว่า ผ่าน s เป็นปัจจัยการผลิต ตอนนี้โชคไม่ดีที่มีฟังก์ชั่นไม่ เรียกชื่อพิมพ์ใน C หรือ ห้องสมุด CS50 แต่ไม่ว่าเพราะเรา สามารถทำให้ตัวเอง ที่จะประกาศการทำงานของเราเองและ แล้วใช้มันเราก็สามารถทำให้ ห้องพักในแฟ้มนี้และประกาศบาง ฟังก์ชั่นดังต่อไปนี้เป็นโมฆะ - แสดงว่าฟังก์ชั่นไม่ จริงจะกลับบางสิ่งบางอย่าง ถึงแม้ว่ามันจะมี ผลข้างเคียง - พิมพ์ชื่อและจากนั้นให้ระบุใน วงเล็บว่าชื่อพิมพ์คาดว่า อาร์กิวเมนต์ของสตริงประเภท และโดยทั่วไปเราจะคิดว่า ที่เป็นชื่อ และให้เปิดรั้งของเรา และปิดรั้งของเรา แล้ว printf ภายในสวัสดีจุลภาค ร้อยละชื่อจุลภาคบรรทัดใหม่ ในคำอื่น ๆ แม้ว่านี้ ฟังก์ชั่นเป็นเพียงหนึ่งบรรทัดของรหัสมัน ไม่ตอนนี้มีบางอย่างที่สูงขึ้น จุดประสงค์ในการพิมพ์ที่ระดับ ชื่อของคนที่มีการอวยพร ตอนนี้ภายในของหลักสังเกตเห็นว่าฉัน เรียกชื่อพิมพ์โดยผ่าน s และเพื่อให้ฉันตอนนี้ดูเหมือนจะมี โปรแกรมที่สมบูรณ์ ความแตกต่างเพียงอย่างเดียวจากคนอื่น ๆ เราได้เขียนเป็นที่ไม่เพียง แต่ไม่ โปรแกรมนี้ได้หลักก็ยังมี การประกาศและการดำเนินการ พิมพ์ชื่อฟังก์ชั่นของตัวเอง ตอนนี้ขอรวบรวมโปรแกรมของฉันกับการทำ ฟังก์ชั่นศูนย์และใช้มันด้วยจุด เฉือนศูนย์ฟังก์ชั่น เมื่อได้รับแจ้งสำหรับชื่อของฉัน ฉันจะพิมพ์ลงในเดวิด และฉันแน่นอนฉันได้รับการต้อนรับ ด้วย "สวัสดีเดวิด." ตอนนี้ก็จะเปิดออกฉันเป็นอย่างจงใจ ชื่อพิมพ์ประกาศดังกล่าวข้างต้นหลัก จึงบอก C ล่วงหน้าว่ามี มีฟังก์ชั่นที่เรียกว่าพิมพ์ ชื่อเพื่อที่ฉันสามารถใช้ ภายหลังในหลัก ตอนนี้ผมได้ใส่ชื่อแทนการพิมพ์ที่ ด้านล่างของไฟล์ของฉันเป็นตรงไปตรงมาที่ฉัน อาจจะทำเพื่อให้ยังคงอยู่หลัก สิ่งแรกที่ฉันหรือ ผู้ใช้อื่นเห็นในรหัสของฉัน ปรากฎว่ารหัสของฉัน ไม่ได้จะรวบรวม โดยเฉพาะถ้าฉันกลับไปของฉัน หน้าต่าง terminal และเรียกใช้ฟังก์ชั่นให้ ศูนย์ตอนนี้สังเกตเห็นว่าฉันตะโกนใส่ ถ้าผมเลื่อนขึ้นในหน้าต่าง terminal ของฉัน ฉันจะเห็นข้อผิดพลาดนี้เป็นครั้งแรกในสีแดง ประกาศนัยของ ชื่อฟังก์ชั่นการพิมพ์ ตอนนี้สิ่งที่หมายความว่าอย่างไร ดีแม้ว่าฉันได้ดำเนินการ พิมพ์ชื่อที่อยู่ในแฟ้มนี้ผมไม่ได้ ดำเนินการก่อนที่จะฉันได้ ใช้มันในหลัก ตอนนี้เราจะกลับไปที่เก่า รุ่นและชื่อพิมพ์ใส่ของ การดำเนินการขึ้นด้านบน แต่ผมสามารถแทนเพียงแค่ให้คำแนะนำ C ที่มีฟังก์ชั่นที่จะมา โดยเฉพาะเหนือหลักที่ฉันสามารถประกาศ พิมพ์ชื่อเช่นเดียวกับที่ผมทำก่อนหน้านี้ แต่ จบสอดคล้องกับอัฒภาคจึง มีแนวโน้มที่จะดำเนินการ แต่ยังไม่ได้ จริงการใช้ฟังก์ชั่น พิมพ์ชื่อที่เรียกว่า แล้วฉันจะมีหลักที่ด้านบนของฉัน ไฟล์ที่ผมหวังและผมสามารถจริง ใช้ชื่อพิมพ์ที่ด้านล่าง ถ้าตอนนี้ผมกลับไปที่หน้าต่าง terminal ของฉัน และคอมไพล์ฟังก์ชันศูนย์แต่งหน้า, เวลาที่จะรวบรวมนี้ และถ้าผมเรียกใช้ฟังก์ชั่นเฉือนจุด ศูนย์ให้ชื่อของฉันฉัน ได้รับการต้อนรับเป็น "สวัสดีเดวิด."