Notice
Recent Posts
Recent Comments
Link
거의 알고리즘 일기장
string의 사용방법들 (예제) 본문
string의 사용방법들
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace std;
//osstream을 이용해서 문자열로 변환하기?
template <typename T>
string Tostring(T x)
{
ostringstream osstream;
osstream << x;
return osstream.str();
}
//istringstream을 이용해서 문자열에서 T형으로 변환가능한지 확인하는 함수
//아직 배우지 않은 항목
template <typename T>
bool FromString(const string& str, T& x)
{
istringstream isstream(str);
return (isstream >> x) ? true : false;
}
int main()
{
string my_string(Tostring("hello"));
double d;
if (FromString(my_string, d))
cout << d << endl;
else
cout << "cannot covert string to double" << endl;
return 0;
}
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
//뒤에 null없음
string str("abcdefg");
//가져올때는 뒤에 null붙여서 보내줌
//data나 c_str이나 똑같음
const char* arr = str.c_str();
const char* arr2 = str.data();
cout <<(int)arr[6] << endl;
cout << (int)arr[7] << endl;
char buf[20];
//copy는 뒤에 null 안붙여줌 그러므로 내가 붙여야함
str.copy(buf, 6, 0);
buf[6] = '\0';
cout << buf << endl;
return 0;
}
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
using namespace std;
int main()
{
string str1("one");
string str2;
str2 = str1;
str2 = "two";
//자기자신이 return type이라 channing?가능
str2.assign("two").append(" ").append("three");
cout << str2 << endl;
//swap
string str3("one");
string str4("two");
swap(str1, str2);
str1.swap(str2);
//append
str1 += "three";
str1 = str2 + "four";
//한글자만 가능
str1.push_back('a');
cout << str1 << endl;
//insert
str1.insert(2, "abcd");
cout << str1 << endl;
return 0;
}
반응형
'c++ 문법' 카테고리의 다른 글
ostream으로 출력하기 ( 기호출력, hex로 출력, 대문자출력 등등 ) (0) | 2020.04.17 |
---|---|
입출력 관련 함수들 (setw, setprecision, get, getline, ignore, putback, unget, peek) (0) | 2020.04.17 |
STL 반복자 _ iterator (0) | 2020.04.12 |
순환의존성과 weak_ptr (0) | 2020.04.12 |
Lvalue와 Rvalue (0) | 2020.04.07 |
Comments