Octoping의 블로그

C언어에서는 문자를 입력받을 때 scanf를 사용한다.

scanf와 함께 %s라는 포맷 코드를 사용하면 문자열을 입력받을 수 있는데, 여기에는 한 문제가 있다.

 

char txt[100];
int main() {
    scanf("%s", txt);
    printf("%s", txt);
}
/*
[input]
Hello, World!

[output]
Hello,
*/

바로 공백을 만나면 문자열의 끝으로 인식하고 문자열을 읽기를 그만둔다는 점이다.

 

 

이럴 때는 gets 함수를 사용하면 쉽게 해결할 수 있다.

char txt[100];
int main() {
    gets(txt);
    printf("%s", txt);
}
/*
[input]
Hello, World!

[output]
Hello, World!
*/
profile

Octoping의 블로그

@Octoping

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!