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

C++빌더 Q&A
C++Builder Programming Q&A
[25081] Re:저기요..배열 사용질문인데여! 진수변환
임문환 [mhlim] 686 읽음    2003-04-06 01:39
2진수를 표현하는 문자열을 10진 정수로 변환하는 것은
문자열의 각 문자를 하나의 비트로 보고 그 것을 정수형 변수에 옮기는 작업과 같은 것입니다.

아래 코드는 예외 처리는 생략하고 핵심만 적은 것입니다.

char val[13];
int len;
int dec=0;

scanf("%12s",val);

len=strlen(val);

for(int i=0,bit ;i<len ;i++)
{
  bit = val[i]-'0';
  if(1==bit) dec |= ( bit << (len-i-1) );
}

printf("%s => %d",val, dec);


카리쓸까? 님이 쓰신 글 :
: 2진수를 10진형으루 하기위해서 입력값 일의 자리에는 2의 영승을
:
:                                입력값의 십의 자리에는 2의 1승을..
:
:                                입력값의 백의 자리에는 2의 2승을..
:                             
:                                ~~~~~~12자리까지....
:     
: 이런식으루 하려는데여 잘안되네여 ㅜ.ㅡ 밑글에 진수변환? 글은 이해하기 힘드네여
: 책보고 대충 짜봤는데 역시나 원하는 값이 나오지 않는데 고수님들의 조언좀...
:
:
: #include<stdio.h>
: main()
: {
:     int a,b,c,d,e,f,g,h,i,j
:     int val[10];
:
:     scanf("%s",&val);
:
:
:    
:
:         a=val[0]*2*2*2*2*2*2*2*2*2;
:     b=val[1]*2*2*2*2*2*2*2*2;
:     c=val[2]*2*2*2*2*2*2*2;
:     d=val[3]*2*2*2*2*2*2;
:     e=val[4]*2*2*2*2*2;
:     f=val[5]*2*2*2*2;
:     g=val[6]*2*2*2;
:     h=val[7]*2*2;
:     i=val[8]*2;
:     j=val[9];
:    
:
:     x=a+b+c+d+e+f+g+h+i+j;
:
:     printf("%d",x);
: }
:
:

+ -

관련 글 리스트
25081 Re:저기요..배열 사용질문인데여! 진수변환 임문환 686 2003/04/06
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.