본문 바로가기

Language/_C

자료형, 상수, 변수, 연산자

예)

int main()
{
          int            a         =          5 ;          // 지역변수
          자료형    변수   연산자     상수
}



자료형 : 선언할 변수들의 특징

 자료형(data type)  할당되는 메모리 크기  표현가능한 크기
 정수형 / char  1 byte  -128 ~ +127 (문자)
 정수형 / short  2 byte  -32768 ~ +32767
 정수형 / int  4 byte  -2147483648 ~ +2147483647 (숫자)
 정수형 / long  4 byte  -2147483648 ~ +2147483647
 실수형 / float  4 byte  3.4*10^-37 ~ 3.4*10^+38|
 소수이하 6자리까지 정밀
 실수형 / double  8 byte  1.7*10^-307 ~ 3.4*10^308 (실수)
 소수이하 15자리까지 정밀
 실수형 / long double  8 byte 혹은 그 이상  차이가 심함(컴파일러 마다)
(C++ 추가 자료형 : 논리형 / BOOL : TURE, FALSE 만 가짐)

자료형 크기 확인 : sizeof(x);  (ex. sizeof(int); )

unsigned : 양수만을 표현(표현할 수 있는 범위가 두 배가 된다) (ex. unsigned char : 0 ~ 255)

형변환 : 자료형을 변환한다. (ex. int a;    cout<<(char)a;)



상수 : 변할수 없는 값

리터럴 상수 : 이름없는 상수 ( ex. int a= 5;    5는 리터럴 상수)


심볼릭 상수 : 이름있는 상수( 변하면 안되는 값(개발자가 실수로 변경할수 있기에)이 있을때 사용)

const 이용 : const int a = 5

매크로 이용 : #define a = 5



변수 : 변할수 있는 값

1. 선언시 쓰레기값 저장.
2. 의미있는 변수명을 부여한다.
3. 변수명에 숫자가 먼저 올수 없다.
4. 변수명에 공백이 포함될수 없다.
5. 변수명은 대소문자를 구분한다.
6. 변수명은 알파벳, 숫자, 언더바를 사용할수 있다.

지역변수 : 지역내에서만 존재(  {    }  )
전역변수 : 프로그램내에서 존재



연산자 :

대입연산자와 산술연산자 : = (대입), + (덧셈), - (뺄셈), / (나누기), % (나머지), a'+='b (a=a+b)


부호연산자 : + (양수), - (음수) 


증가, 감소 연산자 : (ex. a = 10)

++a : 선증가 후연산        (ex. printf("%d", ++a), printf("%d", a);)
a++ : 선연산 후증가        (ex. printf("%d", a++), printf("%d", a);)
--a : 선감소 후연산        (ex. printf("%d", --a), printf("%d", a);)
a-- : 선연산 후감소        (ex. printf("%d", a--), printf("%d", a);)


비교연산자 : < , > , == , != , <= , >=
(조건을 만족하면 : TRUE, 만족하지 않으면 FALSE 리턴)


논리연산자 : && (AND), || (OR), ! (NOT) 

&&(and) : 조건들이 모두 TRUE 면 TRUE

|| (or) : 조건들중 하나라도 TRUE 면 TRUE

not : TRUE->FALSE ,   FALSE->TRUE


비트 단위 연산자 :

& (AND) : 비트단위 AND (비트가 모두 1 이면 1)

| (OR) : 비트단위 OR (비트중 하나라도 1 이면 1)

~ (NOT) : 비트단위 NOT (비트가 1-> 0 ,   0->1)

^ (XOR) : 비트단위 XOR (비트가 서로 다를 때 1 , 같으면 0)

<< (왼쪽 시프트 연산) : 왼쪽으로 비트 이동

>> (오른쪽 시프트 연산) : 오른쪽으로 비트 이동

ex. 1000 1100 (&, |, ^, ~, )  ,        ex. 1100 <<2,    1100 >> 2



서식문자 :

%c : 문자
%s : 문자열
%d : 10진 정수
%f : 10진 실수        
%x : 16진 정수     (16진 정수 표현 : 0x05 )



삼항 연산자 : ' ? '

조건식 ? TURE : FALSE

조건식이 참이면 TRUE 위치의 문장을 실행, 거짓이면 FALSE 위치의 문장을 실행한다.

ex. max = 12 > 5 ? 12 : 5

12와 5를 비교 한후 참이면 12를 max 값에 대입하고
거짓이면 5를 max 값에 대입한다.
(간단한 것들은 if 문을 대신해 사용할 수 있다)

'Language > _C' 카테고리의 다른 글

포인터(Pointer)  (3) 2010.05.11
1차원 배열(Array)  (2) 2010.05.04
반복문 (for, while)  (0) 2010.03.25
분기문 ( if, if - else, switch )  (0) 2010.03.20
C Hello World 출력  (3) 2010.03.13