Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[5603] Re:간단한 'char'를 이용한 변수선언인데 이상해서요...
HS_Soul [janghs1117] 2013 읽음    2006-02-17 12:18
문법적으로는.. 틀린 부분이 없습니다만... 살짝..^^;;;.. 의심이 가는 부분이...

역시.. char 로.. 선언된 부분과... scanf(); 함수에서.. "%d" 로 입력을 받는 부분...;;

char 형일 경우는... 1바이트의 크기를 가집니다..

-128 ~ 127 까지의 작은 정수도 다룰 수 있죠;;;

실제로...

char a = 5, b = 10;
char result = a + b;

이런 식으로 해서.. result 를 출력해보면.. 제대로.. 15란 결과가 나오는 걸 확인할 수 있습니다..

문제는.. scanf(); 함수에서... "%d" 와의.. 연결문제인데...

"%d" 의 경우는... 그 반환형이.. int, long 의 형식인 걸로 알고 있습니다..

int , long 의 경우는.. 1바이트보다 큰.. 데이터형이죠..;;

그것때문에.. 그런 현상이 일어나는 게 아닐까~~^^; 합니다..


C입문생 님이 쓰신 글 :
: #include <stdio.g>
:
: int main(void)
: {
: char a,b,result;
:
: printf("-50과 +50사이의 값을 입력하시오");
: scanf("%d %d",&a,&b);
:
: result=a+b;
: printf("a+b=%d",result);
:
: return 0;
: }
: 이렇게 하고서
: 실행한 후에 두개의 값을 넣으면 예를 들어 5와 7을 입력하면
: 0+7=7 이렇게 나와요...
: 5가 왜 입력이 안되는지 거 참;;
: char을 int로 바꾸면 정상적으로 되는데
: 제가 열혈강의책으로 공부중인데(초보) 그중에 있는 예제이거든요...
: char 은 변수를 하나밖에 선언 못하는건 가요? 책이 잘못된건가요?
: 선배님들의 조언 부탁드립니다. (__) 꾸벅.

+ -

관련 글 리스트
5602 간단한 'char'를 이용한 변수선언인데 이상해서요... C입문생 1797 2006/02/16
5605     Re:간단한 'char'를 이용한 변수선언인데 이상해서요... 1973 2006/02/20
5603     Re:간단한 'char'를 이용한 변수선언인데 이상해서요... HS_Soul 2013 2006/02/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.