C++์์ ๋ฌธ์์ด์ ๋ค๋ฃจ๋ string ํด๋์ค
- C++ ํ์ค ํด๋์ค์ธ string ํด๋์ค๋ ์ค์ค๋ก ๋ฌธ์์ด ํฌ๊ธฐ์ ๋ง๊ฒ ๋ด๋ถ buffer๋ฅผ ์กฐ์ ํ๊ธฐ ๋๋ฌธ์ ๋ฌธ์์ด์ ํฌ๊ธฐ์ ๋ฐ๋ฅธ ์ ์ฝ์ด ์๋ค.
- ๋ฌธ์์ด ๋ณต์ฌ, ๋น๊ต, ์์ ๋ฑ์ ์ํ ๋ค์ํ ํจ์์ ์ฐ์ฐ์๋ฅผ ์ ๊ณตํ๊ณ , ๊ฐ์ฒด ์งํฅ์ ์ธ ํด๋์ค์ด๋ค.
- <string> ํค๋ ํ์ผ์ ์ ์ธ : #include <string> ํ์
- C-์คํธ๋ง๋ณด๋ค ๋ค๋ฃจ๊ธฐ ์ฝ๋ค.
๋ค์์ ์์ 2-7์ด๋ค.
#include <iostream> // ์
์ถ๋ ฅ ์ ์ฉ ํค๋ํ์ผ
#include <string> // string ํด๋์ค๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ํค๋ ํ์ผ
using namespace std; // std ์ด๋ฆ ๊ณต๊ฐ์ ์ ์ธ๋ ๋ชจ๋ ์ด๋ฆ์ std๋ฅผ ์๋ต
int main()
{
string song("Spicy"); // ๋ฌธ์์ด song์ "Spicy"๋ฅผ ์ ์ฅ
string aespa("aespa"); // ๋ฌธ์์ด aespa์ "aespa"๋ฅผ ์ ์ฅ
string singer;
cout << song + "๋ฅผ ๋ถ๋ฅธ ๊ฐ์๋ "; // string ํด๋์ค๋ฅผ ์ด์ฉํ์ฌ + ๋ก ๋ฌธ์์ด ์ฐ๊ฒฐ ์ฌ์ฉ ๊ฐ๋ฅ
cout << "(ํํธ : ์ฒซ ๊ธ์๋ " << aespa[0] << ") ? "; // ๋ฐฐ์ด์ ์์์ ํญ์ 0๋ฒ๋ถํฐ ์์, [] ์ฐ์ฐ์ ์ฌ์ฉ
getline(cin, singer);
// ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋ด์ฉ์ ๋ฌธ์์ด singer์ ์ ์ฅํ๊ณ , ๋น์นธ์ด ์์ด๋ default ๊ฐ(enter)์ด ์
๋ ฅ๋๊ธฐ ์ ๊น์ง ํ๋์ ๋ฌธ์์ด๋ก ์ธ์
if (singer == aespa) // ์ฌ์ฉ์๊ฐ ์
๋ ฅํ singer์ aespa๋ฅผ ๋น๊ต, ๊ฐ์ผ๋ฉด true๋ก ์๋ ๋ฌธ์ฅ ์คํ, ๋ค๋ฅด๋ฉด else๋ฌธ์ผ๋ก ์ฐ๊ฒฐ
cout << "์ ๋ต์
๋๋ค.";
else
cout << "์ค๋ต์
๋๋ค." + aespa + "์
๋๋ค. " << endl; // +๋ก ๋ฌธ์์ด ์ฐ๊ฒฐ
}
๋ค์์ while๋ฌธ์ ์ด์ฉํ ์์ 2-7 ๋ณํ ์ฝ๋์ด๋ค.
#include <iostream> // ์
์ถ๋ ฅ ์ ์ฉ ํค๋ํ์ผ
#include <string> // string ํด๋์ค๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํ ํค๋ ํ์ผ
using namespace std; // std ์ด๋ฆ ๊ณต๊ฐ์ ์ ์ธ๋ ๋ชจ๋ ์ด๋ฆ์ std๋ฅผ ์๋ต
int main()
{
string song("Spicy"); // ๋ฌธ์์ด song์ "Spicy"๋ฅผ ์ ์ฅ
string aespa("aespa"); // ๋ฌธ์์ด aespa์ "aespa"๋ฅผ ์ ์ฅ
string singer;
cout << song + "๋ฅผ ๋ถ๋ฅธ ๊ฐ์๋ "; // string ํด๋์ค๋ฅผ ์ด์ฉํ์ฌ + ๋ก ๋ฌธ์์ด ์ฐ๊ฒฐ ์ฌ์ฉ ๊ฐ๋ฅ
cout << "(ํํธ : ์ฒซ ๊ธ์๋ " << aespa[0] << ") ? "; // ๋ฐฐ์ด์ ์์์ ํญ์ 0๋ฒ๋ถํฐ ์์, [] ์ฐ์ฐ์ ์ฌ์ฉ
while (true)
{
getline(cin, singer);
// ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋ด์ฉ์ ๋ฌธ์์ด singer์ ์ ์ฅํ๊ณ , ๋น์นธ์ด ์์ด๋ default ๊ฐ(enter)์ด ์
๋ ฅ๋๊ธฐ ์ ๊น์ง ํ๋์ ๋ฌธ์์ด๋ก ์ธ์
if (singer == aespa) // ์ฌ์ฉ์๊ฐ ์
๋ ฅํ singer์ aespa๋ฅผ ๋น๊ต, ๊ฐ์ผ๋ฉด true๋ก ์๋ ๋ฌธ์ฅ ์คํ, ๋ค๋ฅด๋ฉด else๋ฌธ์ผ๋ก ์ฐ๊ฒฐ
{
cout << "์ ๋ต์
๋๋ค." << endl;
break;
}
else
cout << "์ค๋ต์
๋๋ค. ๋ค์ ์
๋ ฅํด์ฃผ์ธ์." << endl; // +๋ก ๋ฌธ์์ด ์ฐ๊ฒฐ
}
}