본문 바로가기
안드로이드 웹앱 콘테츠 개발자 양성(국비지원)/c언어

2019.06.24 (월) 변수, 자료형, 고정소수점

by 차누감 2019. 6. 24.

● 변수 : Data를 저장하고 있는 작은 공간

 

변수, 메모리에 대한 수업 ( 하지만 포인터 관련 내용이라 중요)

 

자료형 (Data Type)

char (1byte) - 한문자

short(2byte), int(4byte), long(4byte) - 정수

float(4byte), double(8byte) - 실수

 

RAM 0000 0000 번지부터 ffff ffff (42억개) 2^32

한 칸당 1Byte = 8bit

 

●정수

고정소수점표현방식 (예 / 9  -9)
1)부호와 절대값
2)1의 보수법
3)2의 보수법

 



실수 (4byte, 8byte)

%d는 고정소수점으로 계산
%f는 부동소수점표현 방식으로 계산

printf("%f",10);

결과 : 0.000000

%d로 했을시 지수부에 000 0000으로 10^-64이여서 굉장히 작은 값으로 0출력

int과 float은 4byte로 크기는 같지만 표현할 수 있는 수는 float이 훨씬 많다.
int는 21억 , float는 10^64까지 가능 ( 참고로 21억은 10^9으로 표현 가능)

= 대입연산자
a = 10; 

오른쪽 메모리 공간의 값을 복사하여 왼쪽 메모리 공간에 붙여넣기.

c언어에서 string을 못 만든 이유

한 글자당 1byte인데, 만약 string이란 자료형이 있다면
string a;
a = "Hello";라 했을 때 a를 선언할 때 몇 바이트를 할당하면 될지 알 수 없기 때문에


상수
1)리터럴 상수 (literal) 예)10, 10.5, 'A', "aaaa"

2)매크로 상수(심볼릭 상수) #define

3)상수화된 변수 : const상수 const int a = 10;

댓글