반응형
수업 시간에 string 몸 풀기로 I love C++의 글자를 출력할 때마다 밀어 뒤로 보내는 문제를 풀었다.
오랜만에 C++를 다시 잡으려니 문법도 기억이 나지 않고 어떻게 시작을 해야 할 지 막막했다.
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
char temp;
getline(cin, str); // cin.getline은 string에서 쓸 수 없음
for (int i = 0; i < str.size(); i++)
{
temp = str[0];
str.erase(0, 1);
str.push_back(temp);
cout << str << endl;
}
}
소스코드는 이러한데, temp 변수에 str의 맨 앞 글자를 저장한 뒤 erase함수를 이용하여 맨 앞 글자를 지우고 저장된 temp변수의 값을 str의 뒤에 push(추가) 해주는 코드이다.
*새로 알게 된 문법
보통 입력값을 받을 때 cin.getline을 사용하지만 입력값을 string객체에 저장하기 위해 getline(cin, 변수명)을 사용하여 입력값을 받았다.
erase 함수는 문자열로부터 특정 부분(a와 b사이 값?)을 지우는 함수이다.
push_back 함수는 문자열의 뒤에 한 글자를 덧붙일 때 사용하는 함수이다.
*아쉬운 점
오늘 진행했던 프로그래머스 알고리즘 문제를 풀지 못하여 쓸 내용이 부족하다.
코딩에 대한 감을 더 익힐 수 있도록 해야겠음.
반응형
'자료구조와 알고리즘' 카테고리의 다른 글
[자료구조와 알고리즘] 소수 알고리즘 (0) | 2023.06.14 |
---|---|
[자료구조와 알고리즘] 유클리드 알고리즘 (0) | 2023.06.14 |
[자료구조와 알고리즘] 알고리즘의 분석 (0) | 2023.06.14 |
[자료구조와 알고리즘] 알고리즘의 개요 (0) | 2023.06.14 |
[자료구조와 알고리즘] DFS, BFS (0) | 2022.09.14 |