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