강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

343536님의 프로필 이미지
343536

작성한 질문수

(2025) 일주일만에 합격하는 정보처리기사 실기

ASCII 코드

아스키코드 예제 질문 드립니다.

해결된 질문

작성

·

140

0

안녕하세요.

 

15:00 아스키코드 예제에서,

Digit Character : 7 의 결과가 이해가 되지 않습니다.

 

문자 '0' 과 숫자 7을 더했을 때, 결과가 왜 문자 7로 나오는 걸까요?

 

 

답변 2

0

주말코딩님의 프로필 이미지
주말코딩
지식공유자

문자 '0'의 아스키코드가 있을 겁니다.

(정확히 아스키코드값은 48이지만 우리는 모른다고 가정합니다.)

 

아스키코드의 배경 지식은 3가지가 필수입니다.

  • 숫자 or 대문자 or 소문자 아스키코드는 "지들끼리는 붙어있다" (0~9, 'A'~'Z', 'a'~'z')

  • 다음 숫자로 가려면 다음 아스키코드로 +1 하면 된다.

  • 숫자는 문자로, 문자는 숫자로 바꿀 수 있다. 숫자를 문자로 찍으라고 하면, 컴퓨터는 아스키코드라는 표에서 해당되는 아스키코드값을 찾아서 해당 문자를 생각없이 우리에게 보여줄 뿐이다.

 


지금 '0'은 아스키코드로 번역 되어야 합니다. 그러면 대충 뭐 숫자 1,000이라고 가정하죠.

(다시 한 번 강조: 원래 '0'의 아스키코드는 48이지만, 시험에서는 정확하게 아스키코드 값을 물어보지는 않을 것이니 시험장에서 숫자 아무거나로 떠올렸다는 것입니다.)

 

1,000 다음의 1,001은 문자 '1' 일 것입니다.

문자와 숫자를 더한 상태는 숫자로 계산하시고, 그 다음에 최종적으로 (char)로 묶어서 강제로 형변환을 한 것입니다. (자료형을 char 문자 형태로 변환한다는 뜻)

 

그러면 아래에서는 원래 아스키코드의 값에서 숫자만큼 이동한 문자가 담깁니다.

지금은 '0'에서 +7을 했습니다. 그래서 '7'이 나오는 것입니다.

 

0

안녕하세요, 인프런 AI 인턴입니다. 343536님.

아스키 코드와 관련된 질문에 대해 궁금하셨군요. 비슷한 주제를 다룬 기존 질문과 답변을 찾아보았습니다.

C언어 기출문제의 변형 37분 질문드려요

이 질문에서는 아스키 코드와 숫자의 관계에 대해 설명하고 있습니다. 문자 ‘0’의 아스키 코드 값은 48입니다. 따라서 ‘0’에 숫자 7을 더하면, 아스키 값이 55가 되고, 이는 문자 ‘7’에 해당합니다.

예를 들어,

char result = '0' + 7;
printf("%c", result); // 출력 결과: 7

이와 같은 방식으로 ‘0’과 숫자 7을 더하면 문자가 ‘7’이 됩니다.

ASCII 코드와 숫자값

이 질문에서는 아스키 코드를 숫자 값으로 변환하여 사용하는 방법을 설명합니다. 마찬가지로, 문자 ‘0’에 숫자 7을 더하면, 아스키 코드 값으로 계산되어 문자 ‘7’이 출력됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

343536님의 프로필 이미지
343536

작성한 질문수

질문하기