สวัสดีและยินดีต้อนรับกลับ
ในการบรรยายครั้งนี้ ฉันต้องการ พูดคุยเกี่ยวกับการเข้าถึงไฟล์
ดังนั้นไฟล์บนดิสก์จึงมีชื่อและ กฎสำหรับการตั้งชื่อไฟล์จะถูกกำหนดโดยระบบปฏิบัติการของคุณ
อาจจะต้องปรับตัว ชื่อขึ้นอยู่กับระบบปฏิบัติการที่โปรแกรมของคุณกำลังทำงานอยู่
หากโปรแกรมของคุณทำงานบน windows เมื่อเทียบกับ Linux โครงสร้างไดเร็กทอรีจริงก็แตกต่างกันเช่นกัน
ดังนั้นหากคุณใช้ฟอร์เวิร์ด slashers หรือสแลชย้อนกลับ คุณต้องปรับสิ่งนี้ในโปรแกรมของคุณ
แต่โดยส่วนใหญ่แล้ว ชื่อค่อนข้างมีกฎการตั้งชื่อเหมือนกันและอื่นๆ
แต่มีโอกาสที่ คุณจะต้องปรับมัน
โปรแกรมอ้างอิงไฟล์ผ่าน ตัวชี้ไฟล์หรือตัวชี้สตรีม
เนื่องจากใช้งานได้มากกว่า a ไฟล์ คุณสามารถจริงๆ
เราพูดถึงสิ่งนี้ก่อนหน้านี้ แต่มาตรฐาน ฟังก์ชัน io ทำงานบนอุปกรณ์ใดก็ได้
จึงเรียกว่าตัวชี้ไฟล์ แต่มันควรจะเรียกว่าตัวชี้กระแส
คุณเชื่อมโยงตัวชี้ไฟล์ ด้วยไฟล์โดยทางโปรแกรมเมื่อโปรแกรมของคุณทำงาน
ดังนั้นสิ่งที่คุณทำคือคุณจะ สร้างพอยน์เตอร์ภายในโปรแกรมของคุณ
มันจะเป็นไฟล์ประเภทและ ที่จะเป็นตัวแทนของไฟล์เมื่อคุณอ่านและเขียน
เราใช้ตัวชี้ไฟล์เหล่านี้เป็น วิธีที่มีประสิทธิภาพมากขึ้นในการชี้ไปที่ไฟล์จริง ๆ ในทางตรงกันข้าม
เป็นชื่อเพราะชื่ออาจแตกต่างกันเล็กน้อย
ตัวชี้จะแสดง สิ่งที่มันชี้จริงๆ
และคุณสามารถใช้พอยน์เตอร์ซ้ำได้ เพื่อชี้ไปยังไฟล์ต่าง
ๆ ในโอกาสต่าง ๆ ซึ่งอีกครั้ง ถูกแสดงด้วยชื่อไฟล์
ตัวชี้ไฟล์ชี้ไปที่โครงสร้าง พิมพ์ไฟล์ที่แสดงถึงสตรีม
ไปดูได้เลยจริงๆ ที่โครงสร้างไฟล์เพื่อดูทุกสิ่งที่อยู่ภายใน
แต่มีข้อมูลเช่น เหมือนกับว่าคุณต้องการอ่านหรือเขียนหรืออัพเดทไฟล์
ที่อยู่ของบัฟเฟอร์ในหน่วยความจำที่คุณจัดเก็บข้อมูล a ตัวชี้ไปยังตำแหน่งปัจจุบันในไฟล์สำหรับการดำเนินการต่อไป
เรากล่าวถึงตำแหน่งคือ สำคัญเพราะนั่นคือสิ่งที่คุณกำลังเขียนและอ่านของคุณ
และคุณสามารถตั้งค่าข้อมูลทั้งหมดนี้ได้ ภายในโครงสร้างโดยใช้การทำงานของไฟล์อินพุตและเอาต์พุต
การดำเนินการไฟล์เอาต์พุตอินพุต เมื่อคุณเปิดไฟล์ มันจะระบุว่า
คุณต้องการที่จะอ่านหรือเขียน
แล้วคุณยังสามารถเปลี่ยน ตำแหน่งปัจจุบันโดยใช้วิธีการอื่นเช่นแสวงหาเป็นต้น
ที่เราจะพูดถึง
หากคุณต้องการใช้หลายไฟล์ พร้อมกันในโปรแกรมของคุณ คุณต้องสร้างแยกต่างหาก
ตัวชี้ไฟล์สำหรับแต่ละไฟล์
คุณสามารถใช้ไฟล์ซ้ำได้เท่านั้น ตัวชี้หากคุณกำลังอ่านและเขียนในเวลาที่ต่างกัน
มีจำนวนจำกัดนะคะ ไฟล์ที่คุณมีได้ในครั้งเดียว
คุณสามารถดูขีด จำกัด ใน IO มาตรฐาน มีค่าคงที่
f open max มันทั้งหมด ขึ้นอยู่กับระบบปฏิบัติการที่คุณใช้อีกครั้ง
แต่คุณมักจะไม่ต้องการสร้าง และเปิดไฟล์จำนวนมากพร้อมกัน
การเขียนและอ่านไฟล์คือ การดำเนินการที่มีราคาแพงเพราะคุณกำลังเขียนบนฮาร์ดไดรฟ์
ไม่เร็วเท่าเขียน หน่วยความจำจึงต้องใช้เวลาและอาจทำให้โปรแกรมของคุณ
ให้ตอบสนองน้อยลง
คุณไม่ต้องการที่จะมี10 ไฟล์เปิดและเขียน
10 ไฟล์พร้อมกัน
ในการเปิดไฟล์ สิ่งนี้จะ เป็นขั้นตอนแรกที่คุณทำก่อนอ่านและเขียน
ดังนั้นคุณต้องการเชื่อมโยงเฉพาะ ชื่อไฟล์ภายนอกที่มีตัวชี้สุดท้ายทั้งหมดผ่านกระบวนการ
เรียกว่าเปิดไฟล์.
วิธีที่คุณเปิดไฟล์และ ดูว่าคุณเรียกใช้ฟังก์ชัน f open
สิ่งนี้จะส่งคืนไฟล์ ตัวชี้ซึ่งคุณสามารถใช้สำหรับการอ่านและการเขียน
และอีกครั้ง ตัวชี้ไฟล์คือ จะชี้ไปที่ไฟล์ภายนอกเฉพาะที่อยู่บนดิสก์
F open จะพาไป ชื่อของไฟล์.
การเปิด f คือสิ่งที่คุณต้องทำ ก่อนที่คุณจะอ่าน/เขียนใดๆ
โดยปกติแล้วจะเป็นการผ่าตัดครั้งแรกของคุณ
และเช่นเดียวกับฟังก์ชันส่วนใหญ่เหล่านี้ ทั้งหมดถูกกำหนดไว้ในมาตรฐาน ชม.
นี่คือคำจำกัดความ ของการโทรที่เปิดอยู่
จะเห็นว่าการกลับมา ค่าเป็นตัวชี้ไฟล์ เป็นตัวพิมพ์ใหญ่ทั้งหมด
โครงสร้างไฟล์
ดังนั้นไฟล์ตัวพิมพ์ใหญ่ทั้งหมด
จากนั้นคุณจะสังเกตเห็นว่าต้องใช้ a พารามิเตอร์คู่ มันใช้ชื่อและโหมดและไม่ต้องกังวลกับสิ่งนี้
จำกัด นั่นเป็นเพียงสิ่ง C11 เพิ่มเติม
มันใช้แค่ตัวละครจริงๆ ตัวชี้ไปยังชื่อและโหมด
อาร์กิวเมนต์แรกของฟังก์ชัน เป็นตัวชี้ไปยังสตริงที่เป็นชื่อของไฟล์
ดังนั้น จะอยู่ภายในเครื่องหมายคำพูดคู่
คุณสามารถระบุชื่อได้ชัดเจนหรือ ใช้ตัวชี้อักขระที่มีที่อยู่ของสตริงอักขระ
ทั้งหมดนี้บอกว่าคุณทำได้ สร้างสตริงอักขระและกำหนดให้กับข้อความตามตัวอักษรแล้ว
ส่งผ่านสตริงไปยังฟังก์ชันหรือคุณสามารถใส่ใน double
เครื่องหมายคำพูดภายในการเรียกใช้ฟังก์ชัน
คุณสามารถรับชื่อไฟล์ ผ่านบรรทัดคำสั่งเป็นอินพุตจากผู้ใช้ด้วยหรือกำหนด
เป็นค่าคงที่ของโปรแกรมของคุณ
หากเป็นไฟล์เดียวกันเสมอ คุณกำลังอ่านเขียนถึงและชื่อนั้นไม่สำคัญหรอกคุณ
สามารถอ้างถึงเป็นค่าคงที่
หากโปรแกรมของคุณมีความยืดหยุ่นมากขึ้น ก็ สามารถรับข้อมูลจากผู้ใช้เพื่อพูดในสิ่งที่คุณต้องการอ่านหรือเขียน
อาร์กิวเมนต์ที่สองของ f open ฟังก์ชั่นเป็นสตริงอักขระที่แสดงถึงโหมดไฟล์
ระบุสิ่งที่คุณต้องการทำ กับไฟล์ ไม่ว่าจะอยากอ่าน
อยากเขียนถึง ไม่ว่าคุณจะต้องการผนวกเข้ากับมันหรือไม่
ข้อกำหนดโหมดไฟล์คือ สตริงอักขระระหว่างเครื่องหมายคำพูดคู่และฉันจะแสดง
คุณเป็นคนที่เราจะใช้เป็นจำนวนมาก
สมมติว่าโทรไป f open สำเร็จ มันจะส่งคืนตัวชี้ไฟล์นั้น
ตัวพิมพ์ใหญ่ทั้งหมด
จากนั้นคุณสามารถใช้ไฟล์นี้ ตัวชี้เพื่อเรียกฟังก์ชันอินพุต/เอาต์พุตอื่นๆ
ในส่วนหัว IO มาตรฐาน และ เราจะผ่านมันไปเมื่อเราผ่านการอ่านและการเขียน
หรือคุณสามารถรับตำแหน่งโดยใช้ตัวชี้นั้นเพื่อเปลี่ยน
ตำแหน่งที่คุณอยู่ในไฟล์
หากไฟล์ไม่สามารถเปิดได้ ด้วยเหตุผลบางอย่าง f open
จะส่งกลับค่า null
นี่หมายความว่าอะไรอยู่ต่อหน้าคุณ เริ่มอ่านหรือเขียนสิ่งใด
ๆ ตรวจสอบให้แน่ใจว่าตัวชี้ไม่ใช่ เท่ากับ null อีกอันถ้าตรวจสอบ
นี่คือไฟล์ โหมดที่ฉันพูดถึง
โหมดไฟล์ อย่าลืมว่าคือ พารามิเตอร์ที่สองสำหรับการโทรที่เปิดอยู่
นี่คือสิ่งที่กำหนดสิ่งที่คุณ ต้องการทำอะไรกับไฟล์ และทั้งหมดอยู่ในเครื่องหมายคำพูดคู่
ดังนั้นถ้าคุณทำ w นั่นหมายความว่าคุณต้องการ เพื่อเปิดไฟล์ข้อความสำหรับเขียน
ถ้าคุณทำ a นั่นหมายความว่าคุณต้องการ ในการเปิดไฟล์ข้อความสำหรับการต่อท้าย การเขียนทั้งหมดจะอยู่ที่ส่วนท้ายของไฟล์
หากคุณทำ r จะเปิดขึ้น ไฟล์ข้อความสำหรับอ่าน
หากคุณเพิ่มบวกให้กับ .ใด ๆ สิ่งเหล่านี้โดยทั่วไปจะสร้างไฟล์หากไม่มีอยู่
ดังนั้นหากคุณเปิดไฟล์ w plus มันจะเปิดขึ้นเพื่ออัปเดตและจะตัดไฟล์เป็นศูนย์
หากมีหรือสามารถสร้างไฟล์ใหม่ได้หากไม่มีอยู่
กับอย่างอื่นก็คือ กำลังจะเขียนหรืออ่าน um และไฟล์จะต้องมีอยู่
บวกเหมือนกันจะเปิด ขึ้นเพื่อต่อท้าย, ปรับปรุง, ต่อท้ายไฟล์ที่มีอยู่หรือ
สร้างไฟล์หากไม่มีอยู่
และ r plus จะเปิดขึ้น ไฟล์ข้อความสำหรับอัปเดตจะไม่สร้างไฟล์
ที่นั่นเพราะมันจะว่างเปล่า
ดังนั้นการอ่านจึงเป็นเพียงสำหรับ ทั้งการอ่านและการเขียนเมื่อคุณเห็น
r plus
ต่างจากที่อื่นเล็กน้อย บวกกับที่พวกเขากำลังสร้างไฟล์ที่ไม่มีอยู่จริง
โหมดเขียน
หากคุณต้องการเขียนถึง an ไฟล์ข้อความที่มีอยู่ชื่อ
myfile. txt คุณจะสร้าง ตัวชี้ไฟล์ของคุณ ตัวพิมพ์ใหญ่ทั้งหมด
ตั้งเป็นโมฆะ เริ่มต้นมันเป็นโมฆะ
แล้วคุณอาจจะสร้าง ไฟล์ของคุณเป็นตัวชี้อักขระอื่น
myfile txt หรือคุณสามารถ ส่งผ่านเข้าไปเป็นพารามิเตอร์แรก
แล้วคุณก็แค่พูดว่า f open
F เปิดชื่อไฟล์แล้ว W ภายใน เครื่องหมายคำพูดคู่ที่เปิดไฟล์สำหรับเขียนและส่งคืนตัวชี้ไฟล์
นั่นเป็นเหตุผลที่คุณมีไฟล์ p บน ด้านซ้ายของงาน
จากนั้นคุณต้องการตรวจสอบเพื่อทำ แน่ใจว่าไฟล์ p ไม่เท่ากับ null
เพราะถ้ามันเป็นโมฆะถ้ามัน ไม่สามารถเปิดได้ด้วยเหตุผลใด
ๆ บางทีชื่อไฟล์อาจผิด หรือไม่มีอยู่จริง คุณจะไม่สามารถเขียนถึงมันได้
ดังนั้นคุณมักจะต้องการทำ f ตรวจสอบและพิมพ์ข้อมูลบางอย่างหากไม่เปิดขึ้น
รหัสนี้จะเปิดไฟล์ และจะเชื่อมโยงไฟล์กับชื่อ
myfile txt ด้วย ไฟล์ตัวชี้ไฟล์ fp ของคุณ
โหมด w หมายถึงเราเขียนได้เท่านั้น ไปยังไฟล์ คุณไม่สามารถอ่านได้
ถ้าเป็นไฟล์ชื่อ my file ไม่มีข้อความนั้น
การเรียก f เปิดจะสร้างใหม่ ไฟล์ที่มีชื่อนี้
และสำหรับ f เปิดด้วยตัวเลือก w
และเมื่อเราเห็นในคราวที่แล้ว โหมด w plus จะสร้างไฟล์หากไม่มีอยู่
แต่ ยังตัดทอนไฟล์ให้เป็นศูนย์
นั่นคือความแตกต่างกับ w
w จะสร้างถ้ามัน ไม่มีอยู่จริง แต่จะไม่ตัดให้เหลือศูนย์
นี่เป็นวิธีมาตรฐานสำหรับ เปิดไฟล์โดยใช้ w
นั้นในเครื่องหมายคำพูดคู่
หากคุณระบุเฉพาะชื่อไฟล์ ไม่มีข้อกำหนดเส้นทางใด
ๆ นั่นคือสิ่งที่เราทำในนี้ ตัวอย่าง เส้นทางที่จำคือชื่อของไดเร็กทอรี
หากคุณไม่ระบุชื่อของ ไดเร็กทอรี มันจะถือว่าไฟล์นั้นอยู่ในไดเร็กทอรีปัจจุบัน
ทุกที่ที่โปรแกรมทำงาน
ถ้าอยากเปิดจริง ขึ้นไฟล์ที่อื่นซึ่งไม่ได้อยู่จริงใน
ไดเร็กทอรีโปรแกรม จากนั้นคุณต้องระบุเส้นทางทั้งหมด
เรียกว่าทางสัมบูรณ์
เมื่อคุณไม่มีเส้นทางมักจะ เส้นทางสัมพัทธ์จะสัมพันธ์กับตำแหน่งที่โปรแกรมกำลังทำงานอยู่
ดังนั้นคุณสามารถระบุอย่างใดอย่างหนึ่ง, the สัมบูรณ์หรือเส้นทางสัมพัทธ์
เพียงให้แน่ใจว่าคุณรู้ว่ามันอยู่ที่ไหน และคุณกำลังทำสิ่งที่ถูกต้อง
เส้นทางญาติมักจะดีกว่า เพราะมันไม่ได้ขึ้นอยู่กับ
ถ้ามีคนย้าย ไฟล์นั้นไม่ได้ขึ้นอยู่กับตำแหน่งที่ถูกย้าย
และคุณทำได้จริง เส้นทางสัมพัทธ์ และคุณสามารถย้อนกลับไดเร็กทอรี
ดังนั้นคุณสามารถทำจุด slash และนั่นก็สัมพันธ์กับตำแหน่งที่โปรแกรมกำลังรันอยู่
คุณก็แค่ จะกลับไดเร็กทอรีคู่
เมื่อคุณใช้สัมบูรณ์ เส้นทางจริง ๆ มันจะเป็นโปรแกรม
c โคลอน ไฟล์ถ้าคุณใช้ windows
และถ้าไฟล์นั้นเคยย้าย โปรแกรมก็เปิดไม่ได้
เลยเปิดไฟล์เพื่อเขียน ลิงก์ไฟล์ถูกตัดให้เหลือศูนย์
และตำแหน่งจะเป็น ที่จุดเริ่มต้นของข้อมูลที่มีอยู่สำหรับการดำเนินการครั้งแรก
ข้อมูลใด ๆ ที่ก่อนหน้านี้ ที่เขียนลงในไฟล์จะสูญหายและถูกเขียนทับโดยการดำเนินการเขียนใดๆ
อีกครั้งโดยไม่ต้องให้ บวกกับมันหมายความว่าคุณไม่สามารถอ่านและเขียนได้
นี่คือการเขียนเท่านั้น
W ถูกต้องเท่านั้น
W plus หมายความว่าคุณสามารถอ่านและเขียนได้
โหมดต่อท้าย
หากคุณต้องการเพิ่มไปยังที่มีอยู่ ไฟล์ข้อความแทนที่จะเขียนทับ
คุณสามารถระบุโหมดได้
นี้ขึ้นอยู่กับ.
ตำแหน่งนี้วางไฟล์ไว้ที่ส่วนท้าย ของข้อมูลที่เขียนไว้ก่อนหน้านี้
หากไม่มีไฟล์อยู่ มันสร้างใหม่
ตัวอย่างที่นี่คือคุณเพียงแค่ เปลี่ยนพารามิเตอร์ที่สองเป็นเครื่องหมายคำพูดคู่ภายใน
it จะเพิ่มต่อท้าย myfile .txt
และอย่าลืมว่าคุณ ควรทดสอบค่าส่งคืนสำหรับค่า
null ทุกครั้ง
คุณต้องการทำ if . เสมอ ไฟล์ p ไม่เท่ากับ null
เมื่อคุณเปิดไฟล์ใน append โหมด การดำเนินการเขียนทั้งหมดจะอยู่ที่ส่วนท้ายของข้อมูลใน
ไฟล์ในการดำเนินการเขียนแต่ละครั้ง
การดำเนินการเขียนทั้งหมดผนวก ข้อมูลไปยังไฟล์และคุณไม่สามารถอัปเดตเนื้อหาที่มีอยู่ใน
โหมดนี้มันอยู่ที่จุดสิ้นสุด
ในโหมดอ่านเราสามารถเปิดได้ ขึ้นไฟล์เพื่ออ่านไฟล์
เราใช้ r ภายในเครื่องหมายคำพูดคู่
นี่เป็นการอ่านอย่างเดียว คุณ ไม่สามารถเขียนไปยังไฟล์
ถ้าคุณทำ r บวก คุณจะ สามารถอ่านออกเขียนได้
ดังนั้นดูเหมือนว่าการโทรอื่นๆ คุณเพียงแค่เปิด f ส่งผ่านชื่อไฟล์แล้ว
r ใน double เครื่องหมายคำพูดที่ส่งคืนตัวชี้ไฟล์
นอกจากนี้เรายังจะวางตำแหน่งไฟล์ จนถึงจุดเริ่มต้นของข้อมูล
หากคุณกำลังจะเพียงแค่อ่าน ไฟล์นั้นต้องมีอยู่แล้ว
คุณจะไม่ไป อ่านไฟล์เปล่า
จึงไม่มีตัวเลือกในการสร้าง ไฟล์ไม่มีอยู่ มันจะว่างเปล่าหรือคุณจะกลับมา
ไฟล์ฝ่ายตรงข้ามจะเป็นโมฆะ
หากคุณพยายามเปิดไฟล์สำหรับ อ่านว่าไม่มีอยู่
มันจะส่งคืนตัวชี้ null
ถ้ามันมีอยู่จริงและมันว่างเปล่า คุณเพียงแค่จะไม่ส่งคืนข้อมูล
คุณต้องการตรวจสอบ .เสมอ ค่ากลับจาก f เปิด
อีกครั้ง อ่านว่าสำหรับ ครั้งที่สอง มันสำคัญ
เพราะถ้ามันเป็นโมฆะพอยน์เตอร์ โปรแกรมของคุณกำลังจะพัง
มันจะทำสิ่งเลวร้าย
การเปลี่ยนชื่อไฟล์.
ตอนนี้เรารู้วิธีเปิดไฟล์แล้ว
การเปิดไฟล์เป็นครั้งแรก การดำเนินการ คุณระบุโหมดและชื่อของไฟล์
ที่คืนไฟล์ให้คุณ ตัวชี้ซึ่งขณะนี้คุณสามารถใช้ทำสิ่งอื่นได้
การเปลี่ยนชื่อไฟล์เป็น บางครั้งก็สำคัญ
มันง่ายมาก.
คุณเพียงแค่ใช้ฟังก์ชันเปลี่ยนชื่อ
มันใช้ชื่อเก่าและชื่อใหม่ ตั้งชื่อเป็นพอยน์เตอร์อักขระคงที่
และส่งคืน int
จำนวนเต็มที่ส่งคืนจะ เป็นศูนย์หากการเปลี่ยนชื่อสำเร็จและไม่ใช่ศูนย์
ไฟล์ต้องไม่เปิด เมื่อคุณเรียกเปลี่ยนชื่อ
ไม่งั้นก็พัง เนื่องจากมีการใช้งานอยู่ คุณไม่สามารถเปลี่ยนชื่อไฟล์เมื่อมีการใช้งาน
สิ่งที่คุณทำได้ที่นี่คือคุณทำได้ แค่บอกว่าเปลี่ยนชื่อ ส่งชื่อไฟล์เก่าและชื่อไฟล์ใหม่
ในตัวอย่างนี้ เราใช้ เส้นทางไปยังไฟล์ใน windows
และที่คุณรู้ว่ามันคือ windows เพราะเห็นโคลอน
คุณยังสังเกตเห็นว่า แบ็กสแลชอยู่ที่นั่นสองครั้ง
สาเหตุก็เพราะว่า แบ็กสแลชเป็นอักขระพิเศษในค.
แบ็กสแลช n คือการตอบสนองบรรทัด
แบ็กสแลช r คือการขึ้นบรรทัดใหม่
ดังนั้นแบ็กสแลชจึงมีความพิเศษ ความหมายในโปรแกรม
ดังนั้นหากคุณต้องการใช้ . จริงๆ แบ็กสแลชสำหรับพาธในไดเร็กทอรี
ซึ่งเป็นสิ่งที่ windows ทำ คุณ ต้องจัดให้สองคน
เราจึงเปลี่ยนชื่อ ไฟล์ของฉัน txt ค้นหาไดเร็กทอรีชั่วคราว
เราเปลี่ยนชื่อเป็นไฟล์ของฉันขีดล่าง สำเนา. ข้อความในไดเร็กทอรีพยายาม
และถ้ามันไม่เท่ากัน หนึ่งก็จะล้มเหลว
เราแค่พิมพ์ an เอาต์พุตที่แจ้งว่าล้มเหลว
มิฉะนั้น งานพิมพ์ของคุณสำเร็จ
นี้กำลังจะเปลี่ยน ชื่อ myfile.dll txt ในไดเร็กทอรี temp เพื่อคัดลอกไฟล์ของฉัน
หากเส้นทางของไฟล์ไม่ถูกต้อง หรือไฟล์ไม่มีอยู่ จะไม่สามารถเปลี่ยนชื่อได้
คุณยังสามารถปิดไฟล์และคุณต้องการ เพื่อทำสิ่งนี้ทุกครั้งที่คุณเปิดไฟล์
ดังนั้นเมื่อคุณทำ . เสร็จแล้ว ไฟล์นั้นเอง คุณต้องการบอกให้ระบบปฏิบัติการเพิ่มไฟล์นั้น
จำไว้ว่ามีขีดจำกัด คุณสามารถเปิดไฟล์ได้กี่ไฟล์ในเวลาใดก็ตาม
ทำได้โดยโทร ฟังก์ชัน f ปิด
F close รับไฟล์ ตัวชี้เป็นอาร์กิวเมนต์
จำไว้ว่าตัวชี้ไฟล์ แสดงถึงไฟล์.
มันส่งกลับค่า eof
Eof เป็น int.
ส่งกลับค่า eof หากเกิดข้อผิดพลาด
อ๊อฟเป็นตัวละครพิเศษ เรียกว่าจุดสิ้นสุดของอักขระไฟล์
มันถูกกำหนดไว้ในมาตรฐาน ชม. เป็นจำนวนเต็มลบ
มักจะเทียบเท่า เป็นลบหนึ่ง
ถ้า f close สำเร็จ มันจะกลับเป็นศูนย์
เพื่อให้คุณสามารถตรวจสอบ eof สำหรับความล้มเหลว
คุณแค่พูดว่า f close pass ใน the พอยน์เตอร์ คุณสามารถตั้งค่าตัวชี้เป็นโมฆะและผลลัพธ์ของการโทร
f ใกล้เคียงคือการเชื่อมต่อระหว่างตัวชี้, ไฟล์ p และฟิสิคัลไฟล์เสีย
ไฟล์ P ใช้งานไม่ได้อีกต่อไป เพื่อเข้าถึงไฟล์เพื่ออ่าน
เขียน หรือต่อท้ายหรือเปลี่ยนชื่อ
หากไฟล์ถูกเขียนถึง เนื้อหาปัจจุบันของบัฟเฟอร์เอาต์พุตถูกเขียนไปยังไฟล์ไปยัง
ตรวจสอบให้แน่ใจว่าข้อมูลไม่สูญหาย
คุณจึงไม่มีปัญหากับ ความสมบูรณ์ของข้อมูล คุณจะไม่ปิดไฟล์จริง
ๆ ถ้ามันเป็น ถูกเขียนไปในอีกกระทู้หนึ่ง
ดังนั้นจึงปลอดภัยสำหรับเธรด
เราไม่ได้พูดถึงกระทู้ นั่นเป็นแนวคิดที่ล้ำหน้ากว่า
แต่มันเป็นที่ที่คุณสามารถมีได้หลายแบบ จุดดำเนินการในโปรแกรมของคุณ
เป็นการฝึกเขียนโปรแกรมที่ดี เพื่อปิดไฟล์ทันทีที่คุณทำเสร็จ
เช่นเดียวกับ เป็นแนวปฏิบัติในการเขียนโปรแกรมที่ดีในการเพิ่มหน่วยความจำเมื่อคุณทำเสร็จแล้ว
กับมันเหมือนกันสำหรับการปิดไฟล์
ป้องกันการสูญหายของข้อมูลเอาต์พุต
คุณต้องปิดไฟล์ด้วย ก่อนที่จะพยายามเปลี่ยนชื่อหรือลบออก
จะต้อง ถูกปิดไม่สามารถเปิดได้
การลบไฟล์.
คุณสามารถลบไฟล์โดย เรียกใช้ฟังก์ชันการลบ
สิ่งนี้ถูกประกาศในมาตรฐานด้วย ชม.
การทำงานของไฟล์ทั้งหมดเป็น ประกาศเป็นมาตรฐาน ไอโอ
เข้าไปดูได้ตลอดครับ ไฟล์ส่วนหัวถ้าคุณต้องการทุกที่ที่มีการติดตั้งไฟล์ส่วนหัว
c
คุณก็แค่พูดว่าเอาออก ชื่อของไฟล์.
ที่นี่คุณไม่จำเป็นต้อง ใช้ตัวชี้ไฟล์
พูดได้เพราะ ไฟล์ไม่จำเป็นต้องเปิดอยู่จริง
ๆ เพื่อนำออก
เช่นเดียวกับการเปลี่ยนชื่อเพราะ คุณไม่ต้องการให้ไฟล์เปิดขึ้นเพราะ เปลี่ยนชื่อมิฉะนั้นการนำออกจะล้มเหลว
มันกำลังจะลบไฟล์ ที่มีชื่อ myfile txt จากไดเร็กทอรีปัจจุบัน
นี่คือการจัดเตรียมเส้นทางสัมพัทธ์
มันจะค้นหาไฟล์นั้น ทุกที่ที่โปรแกรมทำงาน
มิฉะนั้นคุณจะต้อง ให้เส้นทางที่แน่นอน
ไม่สามารถเปิดไฟล์ได้เมื่อคุณ ลองลบดู เหมือนเปลี่ยนชื่อ
คุณควรตรวจสอบอีกครั้งเสมอ ด้วยการดำเนินการที่ลบไฟล์
คุณสามารถทำลาย .ของคุณ ระบบหากคุณไม่ทำ
การลบมีราคาแพงมาก การดำเนินการที่อันตรายมาก
การลบไฟล์อาจทำให้เกิดปัญหาได้
ดังนั้นจงระวัง
ข้อมูลทั้งหมดในการบรรยายครั้งนี้ เกี่ยวกับการเข้าถึงไฟล์
วิธีเปิดไฟล์ ซึ่ง คือสิ่งที่คุณต้องทำก่อนอ่านและเขียน
และวิธีที่คุณ สามารถลบและเปลี่ยนชื่อไฟล์แล้วปิดเมื่อคุณใช้งานเสร็จแล้ว
ทุกอย่างขึ้นอยู่กับ ปิดตัวชี้ไฟล์นั้น
ดังนั้นเข้าใจตัวชี้ไฟล์นั้น และโครงสร้างที่ประกอบด้วย
ของสวยน่าใช้.
ส่วนหัว io มาตรฐานประกอบด้วย ข้อมูลที่ดีทั้งหมด
บรรยายคู่ต่อไป เรากำลังจะไป เพื่อพูดคุยเกี่ยวกับการอ่านและเขียนไฟล์ข้อความ
จริง ๆ แล้วเพิ่ม ข้อมูลหรือเพิ่มหรืออ่าน
ขอขอบคุณ. ฉันหวังว่านี่จะเป็นประโยชน์