아스키 코드
아스키코드에서 'A'는 65, 'a'는 97로 둘의 차이는 32가 발생한다.
다른 알파벳 역시 모두 32의 차이를 갖고 있으므로 우리는 32를 더하거나 빼기를 통해
대문자 또는 소문자로 변환할 수 있다.
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
char str = 'A';
cout << char(str + 32);
string str2 = "ABC";
for (auto& ch : str2) {
ch += 32;
cout << ch;
}
return 0;
}
tolower, toupper
아스키코드를 이용하지 않고 간단하게 함수를 통해 구현할 수 있다.
tolower(), toupper()로 바꿀 문자를 넣어주기만 하면 끝!
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
char str = tolower('A');
cout << str;
string str2 = "ABC";
for (auto& ch : str2) {
ch = tolower(ch);
cout << ch;
}
return 0;
}
왜 C++은 이렇게 아스키코드에 집착하는걸까요