XOR 연산자로 알파벳 대소문자 바꾸기
| 프로그래밍 | 2009.05.10 |
DC 프로그래밍 갤러리에서 놀다가 어떤 사람의 질문 글에서 발견함.
간단한 테크닉인데 재미있어서 - 3-
알파벳 캐릭터에 대고 ^ 32를 하면 알파벳 대문자는 소문자로, 소문자는 대문자로 바뀐다.
아스키코드표를 보면 대문자는 65(A)~90(Z), 소문자는 97(a)~122(z)로 할당되어 있다.
둘의 차이가 정확히 32가 난다.
그래서 XOR 연산자 한 번 슥 적용시키기만 하면 대소문자가 바뀌는 것이다.
우연은 아닌 것 같고 아스키코드를 처음 만들 때 이걸 염두에 두고 만들지 않았을까 싶다.
