만약 공백이 존재하지 않을 경우 ~~ -1를 반환한다~~!!
= 주의!!!!!!
https://kamang-it.tistory.com/437
string str1 = "hi my name is gildong";
cout << str1.find(' ') << "\n"; // 2 출력
cout << str1.find(' ', 2) << "\n"; // 2 출력
cout << str1.find(' ', 3) << "\n"; // 5 출력
cout << str1.find("is") << "\n"; // 11 출력
#include <iostream>
#include <string>
using namespace std;
string test = "[]";
string test2 = "hello";
test.erase(test.length() - 1, 1);
// (지우기 시작하는 index, 지울 문자 개수)
test.erase(0, 1);
cout << test << "\n"; // 빈 문자열 출력!!
cout << test.length(); // 0 출력!!
test2.erase(1, 3); // 인덱스 1 포함해서 3개 지우기
cout << test2; // ho 출력
streamstring 사용
#include < sstream > 삽입!!
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
string str1 = "hi my name is gildong";
stringstream ss1(str1), ss2(str1);
string token;
// 1. 공백 기준 분리
while (ss1 >> token)
cout << token << "\n";
cout << "-----\n";
// 2. 특정 문자 기준 분리 -> getline 사용!
while (getline(ss2, token, 'i'))
cout << token << "\n";
return 0;
}
string a = "123";
string b = a;
a = a.substr(0, 1); // b에는 영향 없다!!!
cout << a << "\n" << b;
// 출력
1
123
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
string str1 = "1000";
// string -> int
int num = atoi(str1.c_str());
// int -> string
string str2 = to_string(num);
cout << num + 1 << "\n"; // 1001 출력
cout << str2; // 1000 출력
return 0;
}
string 클래스의 substr(시작index, 문자 개수) 사용
string::substr()은 항상 새로운 메모리를 할당해서 리턴한다
substr(index) -> index 부터 마지막까지 를 반환!!
#include <string>
#include <cctype>
#include <iostream>
using namespace std;
int main(void){
char aaa = '3'; // 소문자, 대문자 아닌 경우에는 그대로 리턴
aaa = toupper(aaa);
cout << aaa << "\n";
char bbb = 'A';
bbb = tolower(bbb);
cout << bbb;
return 0;
}
/* 출력
3
a
*/
#include <string>
#include <algorithm>
#include <iostream>
using namespace std;
int main() {
string str = "abcde";
reverse(str.begin(), str.end());
cout << str;
}
//출력
edcba
#include <string>
#include <iostream>
using namespace std;
int main() {
string str = "abcde";
cout << str.front() << "\n";
cout << str.back() << "\n";
str.pop_back();
cout << str.back() << "\n";
}
//출력
a
e
d