- 문자열 -> 정수
- stoi(str)
- 문자열 -> 실수 (double)
- stod(str)
- stof(str)
- 문자열 -> long
- stol(str)
- 문자열 -> long double
- stold
2016-09-15 20:59:57.421 0.351s,
2016-09-15 20:59:58.233 1.181s,
2016-09-15 20:59:58.299 0.8s,
2016-09-15 20:59:58.688 1.041s,
2016-09-15 20:59:59.591 1.412s,
2016-09-15 21:00:00.464 1.466s,
2016-09-15 21:00:00.741 1.581s,
2016-09-15 21:00:00.748 2.31s,
2016-09-15 21:00:00.966 0.381s,
2016-09-15 21:00:02.066 2.62s
-> 문자열로 주어지는 시간들을 서로 비교할 수 있도록 바꾸어 본다.
1
2
3
4
5
6
7
8
9
10
11
12
|
int change_num(string t) {
string th = t.substr(11, 2);
string tm = t.substr(14,2);
string ts = t.substr(17, 6);
int hour= stoi(th) * 60 * 60 * 1000;
int minute= stoi(tm) * 60 * 1000;
int sec = stoi(ts);
return hour + minute + sec;
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
2016-09-15/ 20 / : / 59 / : / 57.421/
-> 각각 시간, 분, 초를 구한 후 시간은 초와 비교하여 60 * 60 만큼 곱해주고 분은 초와 비교하여 60 만큼 곱해준다.
또한 초 (sec) 가 소수점 3자리를 가지고 있으므로 시간, 분에 1000 만큼 곱해주어 상대적으로 크기를 맞춰준다.
+
[stod]
0.351s -> 정수형 문자가 아니기 때문에 stod를 통해 실수로 만들어본다.
1
2
3
4
5
6
|
int change_double(string t) {
string tmp = t.substr(24, t.size()-25);
double n = stod(tmp);
int res = n * 1000;
return res-1;
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
+
[stol]
: 문자열을 16진수로 변환할 때 사용했었다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
void findPasswd() {
int nums[4]; //16진수로 바꾼 숫자들을 저장함
int unit = n / 4;
int index = 0;
for (int i = 0; i < n; i+= unit) {
char c_tmp[unit];
strcpy(c_tmp, tmp.c_str());
nums[index++] = (int)stol(c_tmp, 0, 16);
}
for (auto i : nums) {
s_set.push_back(i);
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
+
[문자열 간 변환]
-uppercase
cities[0] = "NewYork"
trasform(cities[0].begin(), cities[0].end(), cities[0].begin(), ::toupper);
-lowercase
cities[0] = "NewYork"
trasform(cities[0].begin(), cities[0].end(), cities[0].begin(), ::tolower);
[char형 일 때]
cities[0] = "NewYork"
string tmp = "";
for (int i = 0; i < cities[0].length(); i++ ) {
tmp += toupper(cities[0][i]);
}
'Computer Science' 카테고리의 다른 글
좌표의 크기가 너무 크다면? 좌표 압축 알고리즘 (0) | 2019.09.05 |
---|---|
올림, 내림, 반올림 함수 (0) | 2019.08.29 |
Binary Tree (0) | 2019.08.09 |
Binary Search Tree (0) | 2019.08.09 |
HashMap 정렬 (0) | 2019.05.03 |