SPEAKER 1: Hãy viết một chương trình nhắc nhở người dùng cho tên và nhà của ba sinh viên. Nhưng thay vì chỉ in ra của họ tên và nhà ở cho màn hình, chúng ta hãy thay vì lưu thông tin vào đĩa. Nói cách khác, chúng ta hãy tạo ra, nói rằng, một CSV tập tin, dấu phẩy tách giá trị, mà thực sự chỉ là một file văn bản các chương trình như Excel hoặc số có thể mở và hiệu quả tiết kiệm những tên và nhà vĩnh viễn để chúng ta có thể xem lại chúng sau này. Để làm như vậy, trước tiên hãy xem qua một số mã nồng nhiệt khi tôi đã bắt đầu với đã. Chú ý đầu tiên trong số các tiêu đề lên hàng đầu tại là lib.h tiêu chuẩn mà xảy ra để có một số chức năng liên quan nộp I / O, tập tin đầu vào và đầu ra. Chú ý rằng tôi cũng đã tuyên bố một hằng số gọi là HỌC SINH - trong tất cả các mũ - có giá trị được mã hóa cứng như ba. Nhận thấy bây giờ bên trong của chính mình chương trình, tôi tuyên bố một loạt các kích thước ba sử dụng mà không đổi tên SINH VIÊN mỗi thành viên mà là của loại học sinh. Nhớ lại bây giờ mà một sinh viên chúng tôi sẽ xác định như có một tên và một ngôi nhà cả hai đó là những chuỗi theo này khai chỉ thị, chấm h. Bây giờ trở lại trong structs1.c, nhận thấy rằng tôi có một vòng lặp ở đây là sẽ lặp từ số không đến ba. Nó sẽ nhắc tôi cho một học sinh tên và nhà của học sinh một lần nữa và một lần nữa và một lần nữa. Sau đó ở dưới cùng của chương trình này, nhận thấy rằng tôi có một vòng lặp đó là sẽ giải phóng các sinh viên thứ i của tên và nhà sinh viên thứ i trong một xây dựng tương tự như vòng lặp. Để chắc chắn, chúng ta có thể kết hợp những vòng vào chỉ là một, nhưng tôi muốn có một số phân khúc của mã vì lợi ích của thảo luận ở đây. Bây giờ ở giữa những người cho vòng, chúng ta hãy thực sự có một, và cái này thì mục đích trong cuộc sống là thực sự tiết kiệm tất cả các tên và ngôi nhà là hiện đang trong bộ nhớ RAM vào đĩa theo hình thức của dấu phẩy tách giá trị. Để làm như vậy, chúng ta sẽ sử dụng ba chức năng mới - F mở, F printf, và F gần, mà mở một tập tin, in một tập tin, và đóng một tập tin. Chúng ta có thể sử dụng chúng như sau. FILE, trong tất cả các mũ, trong đó có phần của một sự tò mò trong C, FILE được fopen quote unquote và bây giờ là một tên cho nộp, nói, students.CSV, nhưng tôi có thể gọi nó là bất cứ điều gì nhất, dấu phẩy và bây giờ tôi sẽ chỉ định một đơn w bên trong của dấu ngoặc kép. W, như bạn có thể dự đoán, có nghĩa là fopen nên mở tập tin này gọi là Students.CSV để viết nên rằng chúng ta thực sự có thể tiết kiệm một số nội dung cho nó. Chúng ta hãy kiểm tra tiếp theo nếu tập tin không bằng null. Bởi vì nếu nó là, một cái gì đó có thể đi sai trong trường hợp này chúng tôi không nên tiếp tục cố gắng in bất cứ điều gì với nó. Nhưng nếu nó không phải là vô giá trị, sau đó bên trong dấu ngoặc nhọn tôi sẽ lặp từ tôi bằng 0 trên lên đến SINH VIÊN, và tôi sẽ tăng i trên mỗi lần lặp. Và bên trong vòng lặp này, tôi sẽ fprintf để in vào một tập tin - đặc biệt là một Tôi đã mở - một chuỗi giống như% s này,% s dấu gạch chéo ngược n quote gần. Và bây giờ tôi muốn cắm vào từng những giữ chỗ các giá trị thực tế tên của học sinh và một ngôi nhà Bằng cách sử dụng dấu chấm. Sinh viên khung i.name, sinh viên dấu ngoặc khung i.house gần dấu chấm phẩy. Bây giờ dưới này cho vòng lặp, tôi chỉ đơn giản là sẽ gọi fclose của tập tin để để cuối cùng đóng tập tin. Bây giờ khi tôi chạy chương trình này, tôi không nên thực sự thấy bất cứ điều gì trên màn hình, nhưng tôi cần phải có sau khi chạy chương trình này một tập tin gọi Students.CSV trong cùng thư mục Tôi chạy lệnh trong đó nên chứa một dấu phẩy danh sách các giá trị. Chúng ta hãy có một cái nhìn. Làm cho cấu trúc 1. / Structs1 học sinh tên, chúng ta hãy nói David, anh ta sẽ sống trong Mather. Tên của học sinh, chúng ta hãy nói, Lauren, cô ấy sẽ sống trong Leverett. Tên của học sinh, chúng ta hãy nói, Rob, anh ta sẽ sống trong Kirkland. Bây giờ, một lần nữa, như mong đợi, không có gì xuất hiện đã xảy ra, nhưng hãy để tôi đi trước tại dấu nhắc lệnh và gõ g sửa students.CSV với hy vọng rằng tập tin đó thực sự tồn tại. Gedit students.CSV ENTER, và quả thật, nhận thấy rằng một tập tin có chứa hoàn toàn văn bản, nhưng văn bản phân cách bằng dấu phẩy cho từng lĩnh vực, thực sự tồn tại. Và nếu chúng ta đang sử dụng, không phải là CS50 thiết bị, nhưng một máy Mac quen thuộc hơn hoặc Máy tính, nó chỉ ra rằng chúng ta có thể thực sự mở tập tin CSV này với hơn chương trình quen thuộc như Excel hoặc số.