>> 揚聲器1：讓我們寫一個程序， 提示輸入名稱和用戶
房子的三名學生。
但是，而不是僅僅打印出自己的 名稱和房屋到屏幕上，讓我們
而不是信息保存到磁盤。
換句話說，讓我們來創建，也就是說，一個CSV 文件，逗號分隔值，
這實際上只是一個文本文件， 如Excel或數字節目
可以打開，並有效地挽救那些 名稱和房屋永久使
我們可以稍後再檢討。
>> 要做到這一點，讓我們先來看看 有的，我已經樣板代碼
開始了。
首先是在文件頭中注意 往上頂現在的標準lib.h這
恰好有相關的一些功能 文件I / O，文件的輸入和輸出。
請注意，我還宣布 一個叫學生常數 -
在全部大寫 - 其值 被硬編碼為三人。
現在，請注意我的主要的是內部 節目中，我聲明數組
大小的3使用常數，稱為 每一個其成員的學生是
型的學生。
>> 現在回想一下，一個學生，我們將定義 作為具有這兩者的名稱和房子
這是字符串按照本 聲明指示，點小時。
現在又回到structs1.c，請注意，我 有一個for循環在這裡，那將
從零循環最多三個。
它會提示我的一個學生的 姓名和學生的家
一遍又一遍又一遍。
>> 那麼在這個程序的底部， 請注意，我有另外一個循環
那就是要釋放的第i個學生的 名和第i個學生的家中
類似構造的環路。
可以肯定的是，我們可以結合這些循環 成只有一個，但我想
有一些不同的代碼段 為便於討論在這裡。
>> 現在，在那些環之間，讓我們 其實有另外一個，而這一次的
生活的目的是實際保存所有 這些名稱和房子，是
目前在RAM磁盤的形式 以逗號分隔的值。
要做到這一點，我們將使用 三個新功能 -
F開，F的printf和F接近，這 打開一個文件，打印到文件，並
關閉一個文件。
我們可以使用它們，如下所示。
>> 文件中，在全部大寫，這是有點 在C好奇心，文件被FOPEN
報價引文結束，現在的名稱 文件，比方說，students.CSV，但我可以
叫它任何東西，逗號，現在我 要指定一個單片，內
雙引號。
W，正如你可能已經猜到了， 指的fopen應該打開這個文件
所謂Students.CSV寫了這麼 我們實際上可以節省一些
內容到它。
>> 讓我們接下來的檢查，如果文件 不等於空。
因為如果是這樣，有些事情可能 出了錯在這種情況下，我們
不應繼續嘗試 打印任何東西給它。
但如果它不為空，然後把裡面的 大括號我要遍歷
從i等於0就起來給學生， 而我要去
增加我在每個迭代。
而這個循環中，我要 所以FPRINTF為打印到文件 -
特別是一 我已經打開了 -
一個字符串，它看起來像這樣％S，％s的 反斜線N分別閉合引號。
>> 現在我想插入到每個 這些佔位符的實際值
一個學生的名字和一所房子 使用點運算符。
學生支架i.name，學生 支架i.house接近括號
分號。
現在，下面這個for循環，我只是 要調用的文件FCLOSE為了
最終關閉文件。
>> 現在，當我運行這個程序，我不應該 實際看到的東西
屏幕上，但我應該有運行後， 這個程序一個名為
Students.CSV在同一個目錄 我在應該運行該命令
包含一個逗號分隔 值列表。
讓我們一起來看看。
>> 使結構1 / structs1學生 名字，讓我們說大衛，
他會住在馬瑟。
學生的名字，讓我們說，勞倫， 她會住在萊弗里特。
學生的名字，讓我們說，羅布， 他會住在柯克蘭。
現在，再次，正如所料，沒有出現 已經發生的事情，但讓我
在命令提示符，然後鍵入前進 在希望克編輯students.CSV的
該文件確實存在。
>> gedit的students.CSV ENTER鍵，而事實上， 請注意，包含純粹的文件
用逗號文本，但文本分隔 每個字段，的確存在。
而如果我們使用，而不是CS50 家電，而是一個更熟悉的Mac或
電腦，事實證明，我們確實可以 以更加開放的這個CSV文件
熟悉程序如Excel或數字。