Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

개발 공부

cin과 scanf 본문

코딩 테스트 준비/c++

cin과 scanf

방구석개발입문 2022. 10. 19. 01:01

코딩테스트를 준비하며 다른사람들의 풀이를 살펴보면 C++에서 cin보다 scanf를 사용한 경우를 많이 볼 수 있었다.

 

학교에서 배운 기억으로는

C++에서의 표준입력은 cin으로 알고 있었는데

 

cin과 scanf에는 무슨 차이가 있는지 찾아 보았다??

1. cin

- iostream헤더 파일에 입력 스트림을 나타내는 객체로 정의

- 문자열, 수, 문자 등 다양한 데이터형을 서식문자 없이 변수형에 맞게 자동으로 입력해준다.

- cin은 키보드로 입력한 값을 저장할 변수가 받아들이는 형태로 알아서 바꿔서 저장한다.

 

cin과 scanf의 차이점
- 알고리즘 문제 해결에 있어서, scanf와 printf가 입출력 속도가 훨씬 빠르다고 한다
- whitespace의 저장에도 차이가 있는데 cin은 문자를 받을 때 무시하고 저장하지만 scanf는 저장한다고 한다.

(whitespace : 스페이스와 탭, 줄바꿈, 자동줄바꿈을 처리할지 정하는 속성)

 

 

추가로

C++에서도 C와 동일하게 <stdio.h>라이브러리를 통해 scanf를 사용할 수 있음

* <cstdio> : C언어의 stdio.h와 같다고 함.

stdio.h와 cstdio는 기능상의 차이는 없으나

stdio.h : global namespace를 사용하고

cstdio는 std라는 namespace를 상ㅇ한다고 함