변수 선언문은
double rate = 0.01;
같이 선언한다
int
는 4byte(32bit)
크기의 저장공간을 갖고 그보다 크거나 같으면 long
, 작거나 같으면 short
부호가 붙으면 signed
로 부호가 안붙으면 unsigned
로 구분한다
binary number에서는 맨 앞의 숫자가 부호를 뜻하므로(+ or -)
만약unsigned
라면 맨 앞 숫자가 부호를 의미하는 것이 아님을 나타낸 것이다
C
는 고급언어이므로(추상화의 수준이 높은 언어) 이러한 것들을 굳이 신경쓰지 않아도 되긴한다
깊이 들어가면 물론 필요한 개념이다
참고로 unsigned binary number
로 표현될 수 있는 가장 큰 숫자는 2^n - 1(n[bit])
이다
예를들면
1111 = 2^3 - 1
이다
signed
를 unsigned
로 출력하려면 %u
를 사용하면 된다
ASCII code
로 저장되어 있으며 출력시
#include <stdio.h>
int main(vodi)
{
printf("%c", 65);
return 0;
}
// output: A
자료형, 변수, 상수의 저장공간의 크기를 바이트단위로 알고싶다면
#include <stdio.h>
int main(void)
{
print("자료형: 크기(바이트)\n");
print("int: %d %d\n", sizeof (int), sizeof (200));
return 0;
}
// output
// 자료형: 크기(바이트)
// int: 4 4
자료형의 범주에서 벗어난 값을 저장하는 것을 overflow
실수형 float 변수에 매우 작은 수를 저장하는 것을 underflow
라고 한다
compiler가 compile하기 전에 preprocessor의 preprocess과정이 필요하다
source file -> preprocessing -> temporary file -> compiling -> file
Preprocessor Directives
는 #include
, define
과 같이 항상 #
으로 시작한다
printf
는 print + format
의 약자로써 %d
(10진수), %c
(하나의 문자열로 출력)같이 출력할 format
을 앞에 정해주게 된다