-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
띄어쓰기한후 글이 출력이 안되는 이유
18.03.16 00:49 작성 조회수 225
0
char str[256];
scanf_s("%s", str, sizeof(str));
printf("%sn", str);
return 0;에서
실행하고 문자를 입력하는데 띄어쓰기를 한 후의 문자들이 출력 안되는 이유를 알 수 있을까요?
답변을 작성해보세요.
2
나도코딩
지식공유자2018.03.16
안녕하세요, 나도코딩입니다. ^^
문자열 입력 시 공백으로 구분을 하도록 되어 있어서요, '일 이 삼' 으로 입력하는 경우 일, 이, 삼에 대해 각각의 문자열로 인지하게 되므로 띄어쓰기 직전까지만 입력받게 되는 것입니다.
이를 피하기 위해서는 아래와 같이 작성하시면, 문장의 끝을 나타내는 역슬래시 n (\n)
을 만날 때까지는 띄어쓰기를 포함하여 계속하여 입력을 받을 수 있습니다.
scanf_s("%[^\n]s", str, sizeof(str));
감사합니다.
답변 1