'상수'에 해당되는 글 2건

Programming/C C++
상수는 한번 정해진 값을 바꿀 수 없는 변수입니다.
const int a = 10;
C++에서 상수는 const를 키워드를 사용하며 'const 데이터형 변수명 = 값;'의 형태로 사용됩니다. 상수는 선언될때 값을 지정해야 하며 한번 지정한 값은 바꿀 수 없습니다.

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

[Visual C++] 형변환  (0) 2012.06.29
[Visual C++] 나열형(enum)  (0) 2012.06.28
[Visual C++] 상수  (0) 2012.06.27
[Visual C++] 자료형  (2) 2012.06.26
[Visual C++] 변수  (0) 2012.06.25
[Visual C++] C++ 기본 형태  (0) 2012.06.22
0 0
Programming/C C++
보통 Program에서 다루는 Data는 변수와 상수로 구분됩니다. 변수는

int a;

라고 선언한 뒤에 a에 어떠한 값을 넣느냐에 따라 a값이 달라지므로(값이 변할 수 있으므로) 변수라고 합니다.

반면 상수는 이미 정해진 값으로 그 값 자체는 변할 수 없는 특징이 있습니다.

1. 수치표현

(1) 입력

종류 표현
8 진수 0으로 시작합니다. (011, 022)
10 진수 일반숫자를 나타냅니다. (123, 124)
 16 진수  0x(0X)로 시작합니다. (0xA1, 0XA2)
▶정수표현

 종류  표현
 일반 실수  소수점을 사용합니다. (1.234, 2.56)
 float형 실수  f(F)를 사용합니다. (1.23f, 1.23F)
 long double형 실수  l(L)를 사용합니다. (12.34l, 12.34L)
 지수  e(E)를 사용합니다. (5e3, 3E2)
▶실수표현

참고:
일반실수는 double형입니다.

(2) 출력

 변환문자열  설명
 %o  8진수 출력 - printf("%o\n", 011);
 %d  10진수 출력 - printf("%d\n", 123);
 %x  16진수 출력 - printf("%x\n", 0xA1);
▶정수출력

 변환문자열  설명
 %f  실수출력 - printf("%f\n", 1.234);
 %e  지수출력 - printf("%e\n", 3E2);
 %g  인수를 실수와 지수중 알맞은 형태로 출력합니다.
▶실수출력

참고:
%로 시작하는 문자를 변환문자열이라고 합니다. 이 문자열은 주어진 인수를 해당 형태에 맞는 값으로 Format하는 역활을 합니다.

#include <stdio.h>

main()
{
  printf("%o\n", 011);
  printf("%d\n", 123);
  printf("%x\n", 0xA1);
  printf("%f\n", 1.234);
  printf("%e\n", 3E2);
}


2. 문자표현

문자표현은 '(따옴표)로 둘러싸 표현하며 문자자체와 상수를 이용하는 두가지 방법이 있습니다.

문자 -> 'a' 또는 'A'
상수 -> '97' 또는 '64'

상수로 문자를 표현하고자 할때는 해당 문자에 맞는 Ascii code를 사용하면 됩니다. 단. 일부 System에는 이 값이 틀린경우도 있기 때문에 문자상수는 문자자체로만 표현하는 것이 상수를 사용할때 보다 더 안정적입니다.

(1) 문자출력

문자를 출력하기 위해서는 %c 변환문자열을 사용합니다.

#include <stdio.h>

main()
{
  printf("%c\n", 'a');
  printf("%c\n", 97);
}



3. 문자열표현

문자는 '(따옴표)를 사용했지만 문자열은 "(쌍따옴표)를 사용합니다.

"hello"
"korea"

(1) 문자열출력

문자열출력은 %s 변환문자열 사용합니다.

#include <stdio.h>

main()
{
  printf("%s\n", "hello");
}



4. 기호정수

년도를 표시하기 위해 2009 라고 하였습니다. 하지만 이렇게 숫자로만 2009를 쓰면 다른 사람이 보기에 이것이 년도를 나타내는지 아니면 2009라는 정수를 나타내는 것인지 구분하기 어려울 수도 있습니다.

따라서 단순히 숫자로만 표시하기 보다는 now_year등의 문자열로 표시하면 이것이 년도를 나타내는 것임을 좀더 명시적으로 알려줄 수 있을 것입니다.

기호정수를 사용하는 방법은 다음과 같습니다.

#define 표시어 수치정수

위 구문을 Source Code의 #include 다음에 추가하게 되면 이후 직접 수치를 사용하지 않고도 표시어만을 통해 Code를 작성할 수 있게 되는 것입니다.

#include <stdio.h>
#define now_year 2009

main()
{
  printf("올해 년도는 %d 입니다.\n", now_year);
}



5. 열거형

열거형은 간단히 '정수를 모아놓은 값이다.'라고 할 수 있습니다. 열거형의 선언은 다음과 같이 할 수 있으며

enum 열거형이름 {정수값1, 정수값2, ...}

이때 정수값은 0부터 차례로 부여됩니다.

#include <stdio.h>

main()
{
  enum sequence {first, second, third, fourth, fifth};
 
  printf("%d\n%d\n%d\n%d\n%d\n", first, second, third, fourth, fifth);
}



열거형에서 정수값을 명시적으로 지정하면 해당 값부터 1씩 증가된 값으로 지정됩니다.

#include <stdio.h>

main()
{
  enum sequence {first = 100, second, third, fourth, fifth};
 
  printf("%d\n%d\n%d\n%d\n%d\n", first, second, third, fourth, fifth);
}


first에 100을 지정


필요에 따라 값은 중간부터라도 바꿀 수 있습니다.

#include <stdio.h>

main()
{
  enum sequence {first, second, third = 100, fourth, fifth};
 
  printf("%d\n%d\n%d\n%d\n%d\n", first, second, third, fourth, fifth);
}



열거형은 선언할때 변수를 지정해 해당 변수가 열겨형으로 사용됨을 명시할 수도 있습니다.

#include <stdio.h>

main()
{
  enum sequence {first, second, third, fourth, fifth} sort;
 
  sort = third;
 
  printf("sort의 값 %d\n", sort);
}


sequence를 형으로 한 sort변수를 선언합니다.


이때 enum자체는 int형이므로 선언된 변수도 int형의 크기를 가지게 됩니다. 따라서 열거형의 Data가 아닌 일반적인 int형 정수값도 다음 경우처럼 가질 수 있는 것입니다.

enum sequence {first, second, third, fourth, fifth};
int sort;


열거형 변수는 필요하다면 일반변수와 마찬가지로 몇개든 선언할 수 있으며

enum sequence {first, second, third, fourth, fifth} sort1, sort2, sort3;

enum을 정의한뒤 해당 enum을 Data형으로 한 변수를 따로 선언할 수도 있습니다.

enum sequence {first, second, third, fourth, fifth};
enum sequence sort;

이때 열거형명은 생략할 수도 있습니다.

enum {first, second, third, fourth, fifth} sort;

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

[C, C++] 표준 Library 함수 - 문자 판단 함수  (0) 2011.03.29
[C, C++] Object(obj)와 Link  (0) 2011.02.10
[C, C++] 상수(숫자, 문자, 문자열, 열거형) 정의및 사용  (0) 2011.02.09
[C, C++] 연산자  (0) 2011.02.08
[C, C++] 제어문  (0) 2011.02.01
[C, C++] 공용체  (0) 2010.09.27
0 0
1
블로그 이미지

클리엘