관리 메뉴

ComputerVision Jack

[C프로그래밍 Chapter3] 본문

Programming Language/C Programming

[C프로그래밍 Chapter3]

JackYoon 2020. 1. 18. 01:10
반응형

[C언어 기본 자료형 이해]

자료형 : 데이터를 표현하는 기준, 변수도 상수도 자료형에 근거한다.

즉, 데이터를 표현하는 방법

 

c언어의 기본 자료형

자료형 별 크기를 정확히 제한하고 있지 않다.

많은 자료형을 제공하는 이유

  • 데이터의 표현 방식이 다르다
  • 메모리 공간의 적절한 사용을 위해 다양한 크기의 자료형이 필요하다.

sizeof() 함수 - 자료형의 크기를 알수 있다.

 

정수형 기본 자료형 int

실수형 기본 자료형 double

unsigned char선언 하면 0이상의 값만 표기한다.

[문자의 표현 방식과 문자 자료형]

C언어는 문자 표현에 대해 아스키 코드를 사용한다.

프로그램에서 문자표현 ' ' 가 사용된다. 관련 서식문자 %c

 

C언어에서 정수는 출력의 방법에 따라 문자, 숫자의 형태로 출력이 가능하다. 숫자에 매칭되는 아스키값 사용

[상수 이해]

상수 : int, double과 같은 자료형을 근거로 표현됨.

리터럴(Literal) 상수 - 40, 2 등등

상수를 변수에 저장하여 메모리를 부여한 뒤, 연산을 실행한다.

자료형이 상수값을 조절한다.

따라서 자료가 잘려나가는 상황이 발생할 수도 있다. 자료형의 크기가 차이가 발생하기 때문에,

C언어에서는 접미사를 사용하여 이를 표기한다.

 

심볼릭(Symbolic) 상수 - const 상수

const int Max = 100;

변수 Max를 상수화, Max의 값을 변경 할수 없게 된다. 변수의 상수화.

상수이름을 대문자로 표기하는것이 관례

[자료형 변환]

자료형의 변환 : 데이터 표현 방식을 바꾸는 것

  • 자동 형 변환(묵지적 형 변환)
  • 강제 형 변환(명시적 형 변환)

자동 형 변환

double num1 = 123; - 상관없다.

int num2 = 3.1415;

num2 경우 실수형 데이터를 정수형 데이터로 변화는 과정에서 소수 부분의 손실이 발생한다.

또한 int와 char경우 처럼 상위 비트 손실로 인해 부호가 변하는 과정도 발생.

 

정수의 승격에 의한 자동 형 변환도 존재한다.

무튼, 피연산자의 자료형이 일치하지 않아서 발생하는 자동 형 변환은 데이터의 손실을 최소화하는 방향으로 고려.

 

강제 형 변환

연산 결과가 피연산자의 자료형 결과와 일치하지 않을 경우 발생.

따라서 명시적으로 피연산자 앞에  (자료형)을 사용하여 형을 변환한다.

int num1 = 1

int num2 = 3

int result = num1 / num2 

결과는 0으로 나온다.

 

따라서 num1앞에 (double)num1 하는 순간 상위의 double연산이 이루어진다.

 

 

 

반응형

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

[C프로그래밍 Chapter6]  (0) 2020.01.28
[C프로그래밍 Chapter5]  (0) 2020.01.22
[C프로그래밍 Chapter4]  (0) 2020.01.20
[C프로그래밍 Chapter2]  (0) 2020.01.15
[C프로그래밍 Chapter1]  (0) 2020.01.14
Comments