반응형


Char 형 int 형으로 변환하기

 

Char 형

 

  • C언어에서 Char형은 Character의 줄임말로 기본적으로 문자를 저장할 때 사용되는 자료형이다.
  • 해당하는 문자의 ASCII 코드 값이 정수로 저장되어있다.

 

ASCII 코드

 

 

  • 위의 표는 아스키 코드 테이블로, 48번부터 숫자 0~9를 할당하고 있다는 것을 알 수 있다.
  • 위에서 말했듯이 Char 변수형은 이러한 아스키 코드값을 정수 형태로 저장하므로, 사칙연산이 가능하다.

 

Char 형 숫자를 int형으로 변환하는법

 

  • 숫자의 아스키 값은 48번부터 0~9를 할당하고 있으므로, char형 '1'은 정수값 49를 가진다. 
  • 따라서 0의 아스키 값인 48을 char형의 값에서 빼주면 순수한 숫자를 얻어낼 수 있다.

 

char c = '1';
int n = c - 48;
// n = 1

 

  • 위와 같은 코드는 정상적으로 작동은 하지만, 가독성면에서는 좋지 않을 수 있다. 왜냐하면 다른 개발자들이 봤을 때, 48이라는 숫자가 어디서 나온건지 이해가 가지 않을 수 있기 때문이다.
  • 아래와 같이 작성하면 보다 직관성있는 코드를 작성할 수 있다.

 

char c = '1';
int n = c - '0';
// n = 1

 

반응형
블로그 이미지

Hyunsoo Luke HA

석사를 마치고 현재는 Upstage에서 전문연구요원으로 활동중인 AI 개발자의 삽질 일지입니다! 이해한 내용을 정리하는 용도로 만들었으니, 틀린 내용이 있으면 자유롭게 의견 남겨주세요!

,