Programming/C C++
1. 진수표시

C++에서는 어떠한 Data를 원하는 진수형식으로 표현하기 위해 oct(8진수), dec(10진수), hex(16진수) 등을 사용합니다.(이런것을 흔히 Manipulator이라고 합니다.)

#include <iostream.h>

main()
{
  int i;
 
  i = 12;
 
  cout << "12 -> 8진수 : " << oct << i << endl;
  cout << "12 -> 10진수 : " << dec << i << endl;
  cout << "12 -> 16진수 : " << hex << i << endl;
 
  return 0;
}


oct << i, dec << i, hex << i를 통해 12 i값을 각 진수로 변환하고 있습니다.


이외에도 endl처럼 줄바꿈을 하는 ends(\0 처리), ws(입력시 공백제외)등 여러가지가 있습니다.

2. 자리수 지정

출력되는 Data에 일정한 간격을 표시하거나 소수출력시 자리수를 맞추기 위한 함수로 C++에는 setfill(), setw(), setprecision() 함수가 있습니다.(이 세개의 함수는 iomanip.h Header File에 정의되어 있습니다.)

#include <iostream.h>
#include <iomanip.h>

main()
{
  cout << setw(15) << "hello!" << endl;
 
  return 0;
}


setw()함수를 사용하여 출력되는 전체자리수를 지정하고 있습니다.


#include <iostream.h>
#include <iomanip.h>

main()
{
  cout << setw(15) << setfill('-') << "hello!" << endl;
 
  return 0;
}


setfill()함수로 출력되고 난 후의 빈공간을 - 문자로 채우도록 합니다.


#include <iostream.h>
#include <iomanip.h>

main()
{
  double d;
 
  d = 12.345;
 
  cout << setprecision(3) << d << endl;
 
  return 0;
}


setpecision()함수로 12.345를 3자리로 맞추어 출력하도록 합니다.

'Programming > C C++' 카테고리의 다른 글

[C, C++] Class구현시 생성자와 소멸자 활용  (0) 2011.06.01
[C, C++] Class  (0) 2011.05.25
[C, C++] cout 서식지정  (0) 2011.04.14
[C, C++] 구조체  (1) 2011.04.13
[C, C++] 변수선언및 초기화  (0) 2011.04.07
[C, C++] C에서 C++로의 변화  (1) 2011.04.06
0 0