>> 스피커 1 :의 프로그램을 작성하자 그 이름에 대한 사용자와 메시지를 표시
세 학생의 집.
그러나이 아니라 그냥 인쇄 자신의 화면에 이름과 집,하자
대신 디스크에 정보를 저장합니다.
즉, CSV에게, 말,의가 만들 수 있습니다 파일, 쉼표로 구분 된 값,
실제로 그냥 텍스트 파일입니다 그 Excel 또는 숫자와 같은 프로그램
열, 효과적으로 사람들을 절약 할 수 있습니다 이름과 주택 영구적으로 너무
우리는 나중에 검토 할 수 있습니다.
>> 이렇게하기 위해, 먼저 살펴 보자 내가했습니다 어떤 상용구 코드
이미 시작되었다.
먼저 헤더들 사이에 주목 정상까지 이제 표준 lib.h입니다
관련된 몇 가지 기능을 가지고 발생 I / O, 파일 입력 및 출력을 파일로 저장.
나는 또한 선언되었음을 주목 학생이라는 상수 -
모두 대문자 - 값이 하드 세 가지로 구분된다.
지금 내 주요의 내부를 주목하라 프로그램, 나는의 배열을 선언하고있어
사이즈 세 가지라고하는 정수를 사용하여 학생 그 구성원 각각이다
학생들을 입력합니다.
>> 학생이 우리가 정의하는 것이라는 점을 지금 기억 이름과 집 모두의 것으로
이에 따라 문자열되는 선언은, 점 H를 지시합니다.
이제 다시 structs1.c에, 그 통지 I 루프 여기 그 것있다
최대 3 0에서 반복.
그것은 학생의 날을 묻는거야 이름과 학생의 집
다시 또 다시.
>> 그런 다음이 프로그램의 하단에, 내가 루프 다른 것을 알 수
그 무료 것 i 번째 학생의 이름과의 i 번째 학생의 집
유사하게 루프를 건설했다.
확실히, 우리는 그 루프를 결합 할 수 한,하지만 내가 원하는에에
일부 코드를 별개의 세그먼트가 여기에 토론을 위해서.
>> 이제 루프 그 사이에,하자 실제로 다른이,이 하나의
인생의 목적은 실제로 모두를 저장하는 것입니다 이들의 이름과 집의
현재 형태의 디스크에 RAM에 쉼표로 구분 된 값.
이렇게하려면, 우리가 사용하는거야 세 가지 새로운 기능 -
F 개방 F printf를, 그리고 F 가까이, 어떤 파일을 열고 파일로 인쇄하고,
파일을 닫습니다.
우리는 다음과 같이 사용할 수 있습니다.
>> FILE은 모두 대문자, 이는 다소입니다 C의 호기심, 파일은 fopen됩니다
인용을 끝 맺다하고 이제 이름 students.CSV, 말, 파일,하지만 난 할 수
대부분의 아무것도, 쉼표를 호출 지금은 해요 내부 w 하나를 지정하는 것
큰 따옴표.
W, 당신은 이미 짐작할 수 있겠지만, fopen을이 파일을 열 것을 의미한다
그래서 쓰는 Students.CSV라고 우리는 사실을 절약 할 수 있습니다
그것에 내용.
>> 하자 옆에 체크하면 파일 null이 동일하지 않습니다.
이 경우, 어떤 아마가 있으므로 이 경우에 잘못 됐어요 우리
시도 더 이상 진행하지 않는 것이 좋습니다 그것은 아무것도를 인쇄합니다.
그러나이 null의 경우, 다음의 내부 내가 반복하는거야 중괄호
나는 학생까지 0을 동일에서 나는 갈거야
나는 반복 될 때마다 증가.
이 루프의 내부에, 내가 갈거야 fprintf와 파일로 인쇄 할 수 있도록 -
특히 하나 나는 이미 열려 -
이 % s의 %의처럼 보이는 문자열 백 슬래시 N 가까운 견적.
>> 그리고 지금은 각 플러그 할 그 자리의 실제 값
학생의 이름과 집의 도트 연산자를 사용하여.
학생 브래킷 i.name, 학생 브래킷 i.house 가까이의 괄호
세미콜론.
이제 루프이 아래에, 나는 단순히 해요 위해 파일의 fclose 함수를 호출하는 것
궁극적으로 파일을 닫습니다.
>> 나는이 프로그램을 실행할 때 지금, 나는하지 말아야 실제로 아무 것도 참조
화면,하지만이 있어야 실행 한 후 이 프로그램이라는 파일
같은 디렉토리에 Students.CSV 그 나는 그것이해야에 명령을 실행
쉼표로 구분을 포함 값 목록.
어디 보자.
>> 확인 구조체 1. / structs1 학생의 ,의 데이비드 말을하자, 이름을
그는 메이에 살고 있습니다.
학생의 이름,의 말을하자, 로렌, 그녀는 Leverett에 살고 있습니다.
학생의 이름,의 말을하자, 롭, 그는 커크 랜드에 살고 있습니다.
이제 다시, 예상대로, 아무것도 표시되지 않습니다 일어,하지만하자했습니다 나
명령 프롬프트에서 다음을 입력 진행 희망의 G 편집 students.CSV 그
해당 파일이 실제로 존재합니다.
>> gedit를 students.CSV ENTER를, 참으로, 알이 순수하게 들어있는 파일
텍스트 만 텍스트를 쉼표로 구분 각 필드에 대해, 실제로 존재합니다.
그리고 우리는 CS50은하지 사용한 경우 제품,하지만 익숙한 Mac 또는
PC, 그것은 밝혀 우리가 실제로 할 수 더 많은이 CSV 파일을 엽니 다
Excel 또는 번호와 같은 친숙한 프로그램입니다.