[C++] cin.ignore()์ผ๋ก ๋ฒํผ ๋น์ฐ๊ธฐ
by rlaehddnd0422C++์์ ์คํธ๋ง์ ์ ๋ ฅ๋ฐ์ ๋ std::cin์ ์ด์ฉํด ์ ๋ ฅ๋ฐ๊ณค ํฉ๋๋ค.
์ด ๋ ์ ๋ ฅ๋ฐ๋ ์คํธ๋ง์ ๊ณต๋ฐฑ์ ํฌํจํ๊ณ ์ถ์ ๋, ์๋ฅผ ๋ค๋ฉด "hello world" ๋ผ๋ ์คํธ๋ง์ ํ๋์ ๋ณ์์ ์ ์ฅํ๊ธฐ ์ํด์๋ getline()์ ํตํด ์ ๋ ฅ์ ๋ฐ์์ผ ํฉ๋๋ค.
ํ์ง๋ง ์ด ๋ getline์ ํธ์ถํ๊ธฐ ์ ๋ฐ๋ ์ ๋ ฅ์ด ์๋ค๋ฉด, ๋ฒํผ์ ๊ฐํ๋ฌธ์(\n)๊ฐ ๋จ์์๊ธฐ ๋๋ฌธ์ '\n'์ด getline์ ๋ฐ๋ก ์ ๋ ฅ๋์ด ๋ฒ๋ฆฌ๊ฒ ๋ฉ๋๋ค.
cin์ '\n'์ ์ฒ๋ฆฌํ์ง ์๊ณ ์ ๋ ฅ๋ฒํผ์ ๋จ๊ฒจ๋ โก๏ธ getline()์ ์ ๋ ฅ๋ฒํผ์ ๋จ์์๋ '\n'์ ๊ฐ์ ธ์์ ์ฒ๋ฆฌ โก๏ธ ์ ๋ ฅ๋ฐ์ ์ ์ฅ๋ ์คํธ๋ง ๋ณ์์ ์๋ถ๋ถ์ '\n'์ด ํจ๊ป ์ ์ฅ๋จ.
int n;
string s;
cin >> n;
getline(cin, s); // n์ ์
๋ ฅ ์ดํ ๋ฒํผ์ '\n'์ด ๋จ์์์ด '\n'์ด ๋ฐ๋ก ์
๋ ฅ์ผ๋ก ๋ค์ด๊ฐ.
์ด ๋ cin.ignore()์ ํตํด ๋ฒํผ๋ฅผ ๋น์ธ ์ ์์ต๋๋ค.
int n;
string s;
cin >> n;
cin.ignore(); // n์ ์
๋ ฅ์ดํ ๋ฒํผ์ ๋จ์ '\n'์ ๋ฒํผ๋ฅผ ๋น์์ผ๋ก์จ ๋ฒํผ์์ ์ญ์ .
getline(cin, s);
'๐ CS > Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Stack ํ์ฉ] 17299. ์ค๋ฑํฐ์ (0) | 2023.09.08 |
---|---|
[Stack ํ์ฉ] 17298. ์คํฐ์ (0) | 2023.09.08 |
๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ(Greedy Algorithm) (0) | 2023.02.13 |
17142. ์ฐ๊ตฌ์ 3 (0) | 2023.02.10 |
4991. ๋ก๋ด์ฒญ์๊ธฐ (0) | 2023.02.07 |
๋ธ๋ก๊ทธ์ ์ ๋ณด
Study Repository
rlaehddnd0422