컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post Perl 펄, 8진수를 10진수로 변환 출력, 팔진수 십진수 변환 함수 octCD 이미지 에디터는? 시디롬 Image 파일 편집기Excel 엑셀 VBA: 특정 셀 값 읽기 쓰기, 셀값 변수에 저장; Cell Read W...Java 자바로 타이머 Timer 만들기 소스, 스톱워치 Stopwatch 구현Excel 엑셀 VBA 에서 Cells 속성, Cells 함수 사용법엔터 키의 이스케이프 시퀀스 문자; Enter Escape Sequence맑은 고딕 폰트명; Malgun Gothic TTF 폰트 파일 이름C언어, 타이머 Timer 만들기 소스; 스톱워치 StopwatchPerl 펄, 타이머 Timer 만들기 소스, 경과 시간 스톱와치BAT 실행창, 배치파일 실행하는 창은? Batch Window

C언어, 8진수 10진수 변환, 팔진수를 십진수로 바꾸는 함수; Octal Number

Tuesday, August 28, 2007
스폰서 링크

C언어에서, 팔진수와 십진수를 상호 변환하는 방법입니다. "팔진수 문자열"을 "십진수 숫자"로 변환할 때에는 strtoul 함수의 3번째 인수에 8을 넣어주면 됩니다. 반대로, 10진수를 8진수로 바꿀 때에는 printf 함수에서
%o 라는 포맷을 지정하면 됩니다. 다음 예제와 같습니다.

아라비아 숫자 앞에 영(0)을 붙이면 8진수 상수로서 인식됩니다.

8진법 10진법 숫자 바꾸기 예제 C소스


예제 소스 파일명: example.cpp
#include <stdio.h>
#include <stdlib.h>

#define STR_SIZE 100


int main(void) {
  char str[STR_SIZE];


  //////////////////////////////////////////
  // 팔진수를 십진수로 바꾸기
  //////////////////////////////////////////

  // "0142"라는 8진수 문자열을, 10진수 숫자 98로 변환
  char *s = "0142"; // 앞에 0이 없이 그냥 142 라고 해도 됩니다
  unsigned long n = strtoul(s, NULL, 8);
  printf("%u\n", n);
  // 출력 결과: 98

  // "팔진수 상수 숫자"를, 10진수 숫자로 화면에 출력
  // 앞에 0(제로)을 붙여서 팔진수 상수라는 사실을 알려주어야 함
  printf("%d\n", 0142); // 출력 결과: 98



  //////////////////////////////////////////
  // 십진수를 팔진수로 바꾸기
  //////////////////////////////////////////

  // 10진수 숫자 98을 팔진수 142 로 화면에 출력
  // 퍼센트 기호 + 소문자o (오) 라는 포맷 사용
  printf("%o\n", 98); // 출력 결과: 142

  // 앞에 8진수 접두사 0(제로)를 붙이려면
  printf("0%o\n", 98); // 출력 결과: 0142




  // 십진수 숫자 98을, 팔진수 문자열 "0142" 로 변환한 후,
  // "0142"를 화면 출력이 아닌, str 배열에 문자열로서 저장
  // sprintf_s 함수는 비주얼C++ 2005 이상에서만 사용 가능
  sprintf_s(str, STR_SIZE, "0%o\n", 98);

  printf("문자열이 된 팔진수입니다: %s\n", str);
  // 출력 결과: 문자열이 된 팔진수입니다: 0142


  return 0;
}




▶▶ C언어] 십진수 정수, 16진수 헥사(Hex)로 변환/출력 함수? 방법은?

▶▶ 윈도우 계산기로, 16진수(Hex) 10진수(Dec) 8진수(Oct) 2진수(Bin) 변환



16진법 2진법 10진수, 아스키 유니코드 상호 변환기: ▶▶ 16진수 헥사, 2진수, 10진수, 8진법 변환 계산기; Hex Calc




더 읽기:
C언어 | C/C++ (Visual C++)

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top