Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
Tags
- chatgpt #gpt #챗지피티 #ai
- 도커 #docker #docker-compose.yml #도커컴포즈 #배포 #spring #mysql #docker-compose
- 도커 #Docker #배포 #Spring #MySQL #백엔드배포
- /
Archives
- Today
- Total
개발자 데뷔!
[C/C++ 2.10] ASCII(아스키 코드) 와 형변환(casting) 본문
아스키코드 사용
char one = 'A';
char two = '65';
cout << one; // 출력 : A
cout << two; // 출력 : A
cout << int(one); // 출력 : 65
// 계산식을 거치면 int형으로 변환됨
cout << one - two; // 출력 : 0 (두 문자 사이의 간격)
// 다른 type 변수에 저장하면 해당 type으로 바뀜
int ONE;
ONE = one;
cout << ONE; // 출력 : 65
* 두 char 타입을 아스키계산 하게 되면, int형으로 변환되어 출력된다.
즉, 아스키 연산 후에는 반드시 char() 로 묶어 캐스팅 해줘야 문자로 출력된다.
캐스팅
- 변수 앞쪽에 변환하고 싶은 type을 붙여주면
type 이 변환된다!! ( = casting 된다)
char a;
// type casting
cout << int(a);
cout << (int)(a);
대/소문자 범위
- 대문자 'A'의 ASCII코드
65
- 대문자 ASCII 범위
if (a>='A'&& a<='Z'){ }
// 또는
if (a >= 65 && a <= 90){ }
- 소문자 ASCII 범위
if (a>='a'&& a<='z'){ }
// 또는
if (a >= 97 && a <= 122){ }
대/소문자 변환
- 대문자 → 소문자
문자 +32
char ch;
cin >> ch;
cout << char(ch - 'A' + 'a');
- 소문자 → 대문자
문자 -32
char ch;
cin >> ch;
cout << char(ch - 'a' + 'A');
대/소문자 순환
- 대문자 순환
for (char i = 'A'; i <= 'Z'; i++) { // i의 type을 char로 설정하는 것이 중요
cout << i;
}
// 또는
for (char i = 65; i <= 90; i++) {
cout << i;
}
문자'0'의 ASCII CODE
- 문자 '0'의 ASCII 코드
= 48
* char 숫자 → int 숫자
char 로 받은 숫자를 → 같은 int 숫자 로 바꾸는 법!!
int main() {
char a;
cin >> a;
// 입력받은 문자 a 가 숫자라면,
if (a >= '0' && a <= '9') { // a == '0' 일때,
//cout << (int(a)) + 5; // 출력 : 52
cout << (int(a)) - 48 + 5; // 출력 : 0
// 왜냐하면 int(a)는, a='0'의 ASCII 코드값
}
return 0;
}
예제
알파벳 ASCII 범위 넘어서면, 다시 알파벳으로 순환하도록 함
//5번
int main() { // 이거 문자열 총정리 할 때 꼭 넣어서 정리 !!!!!
char a;
cin >> a;
for (char i = a - 3; i <= a + 3; i++) { // 알파벳 아스키 범위 넘어가면 다시 알파벳으로 순환하게 만든 코드 !!!!
if (i < 'A') {
cout << char(i + ('Z' - 'A') + 1);
}
else if (i > 'Z')
cout << char(i - ('Z' - 'A') - 1);
else
cout << i;
}
return 0;
}
'프로그래밍 언어 > C' 카테고리의 다른 글
[C/C++ 7.2] 구조체 (0) | 2022.03.16 |
---|---|
[C/C++ 7.1] 함수 (0) | 2022.03.16 |
[C/C++ 7.4] 함수에서 값 2개이상 return 하기 (0) | 2022.03.15 |
[C/C++ 8.0] 매크로(Macro) 함수 (0) | 2022.03.11 |
[C/C++ 3.4] 2중 for문 마스터 (2차원 배열 접근하기) (0) | 2022.03.11 |