프로그래밍을 하다 보면 문자열 형태의 숫자를 실제 숫자로 변환하거나, 반대로 숫자를 문자 형태로 변환해야 할 때가 있다. C 언어에서 이러한 변환은 아주 간단하게, 그리고 직관적으로 이루어진다.
문자를 숫자로 변환하기
문자 '0'부터 '9'까지의 문자는 ASCII 코드에서 연속적인 값을 가지므로, 이들 각각의 문자에서 '0'의 ASCII 코드값(48)을 빼면 그 결과는 0부터 9까지의 정수가 된다.
int num = 5; // 숫자 5
char ch = num + '0'; // 숫자 5에 '0'을 더하면 문자 '5'가 됨
숫자를 문자로 변환하기
반대로, 정수 0부터 9까지를 그에 해당하는 ASCII 문자로 변환하려면, '0'의 ASCII 코드값을 더하면 된다.
int num = 5; // 숫자 5
char ch = num + '0'; // 숫자 5에 '0'을 더하면 문자 '5'가 됨
참고: ASCII 코드표
'C 언어' 카테고리의 다른 글
2차원 배열 동적 할당 시 해제 (0) | 2024.04.28 |
---|---|
공백 문자열과 빈 공간 문자열의 차이 (1) | 2024.04.22 |
토큰(token): 문자열이나 코드를 구성하는 작은 단위 (0) | 2024.04.14 |
2차원 배열 메모리 할당과 포인터 (0) | 2024.04.10 |
타입 캐스팅(Type Casting)과 역참조(Dereferencing) (0) | 2024.04.06 |