char name[10];
char sex;
int age;
FILE* fp; fopen_s(&fp, "friend.txt", "wt");
int i;
for (i = 0; i < 3; i++){
printf("이름 성별 나이 순 입력\n");
scanf_s("%s %c %d", name, &sex, &age,sizeof(name)); <---------이 부분
getchar(); // 버퍼에 남아있는\n의 소멸을 위해서
fprintf(fp, "%s %c %d", name, sex, age);
}
이런 코드를 짰는데요
궁금한점 1
저 위에 scanf_s에서 값을 읽고나면 자꾸 프로그램이 꺼져버립니다.
scanf_s를 사용할 때 꺼져버리는 경우는 &를 안붙여서 그런 경우가 많은데 이번에는 제대로 다 했는데 저러네요..
왜 자꾸 프로그램이 그냥 꺼지는지 모르겠습니다.
궁금한점 2
scanf_s의 마지막에 sizeof(name)은 버퍼의 크기를 정해주려고 넣었는데요
보시다시피 3개의 값을 받는 경우에는 버퍼의 크기를 정하는 것도 3번 해야하나요? 아니면 지금처럼 한번만 해도 돼나요?
이건 구글링 해도 다들 1개 인자 받을 때 만 설명하고 있어서 잘 모르겠어요
읽어주셔서 감사합니다.