336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
간단하게,
char temp[256];
scanf("%s", temp);
printf("%s", temp);
에서 space를 콘솔화면에 입력하면 공백(white space)을 제대로 결과값을 못내고 있는 모습을 볼 수 있다.
이에 대한 해결책으로
1. gets() 함수를 사용하여 받으면 공백도 물론 읽을 수 있다.
하지만 scanf를 꼭 써서 공백문자(white space)를 읽어야한다면 한다면?!
2. scanf("%[^\n]", temp); 와 같은 방식으로 해주면된다.
이는 \n 가 나오기 전까지 읽게 한다. 즉 개행문자가 나오기전... 한문장이 끝나기 전까지 읽어온다.
그러면 공백(white space)까지 scanf로 읽어올 수 있게된다.
5가 나오기 전까지 읽어드린다는 말이다.
위의 코드에서 123456789 등등 더 많은 문자밑 숫자를 입력해도
1234까지만 출력된다. 5가 나오기 전까지 읽는것이므로...
'# IT, Computer Science > C , C++' 카테고리의 다른 글
sprintf, format에서의 %s, %S의 차이점 (2) | 2011.09.11 |
---|---|
CString <-> Char* 변환 (0) | 2010.08.14 |
C언어 제곱근 계산&알고리즘(바빌로니아 법) (2) | 2009.11.01 |
Call by Reference (0) | 2009.10.20 |
c언어에서의 올림(ceil), 내림(floor), 반올림 (2) | 2009.10.15 |