데이터의 종류를 자료형(data type)라고 한다.
변수를 선언할 때는 자료형을 적어줘야함
[자료형 종류]
[정수형]
short : 16비트(2바이트), -3만 ~ 3만
int : 32비트(4바이트), - 21억 ~ 21억
long : 32비트(4바이트), -21억 ~ 21억
long long : 64비트(8바이트) , 걍 겁나 넓음
- sizeof()연산자를 통해 자료형의 크기를 계산할 수 있다
ex) printf(“%d”, sizeof(int));
- 음수가 필요 없다면 앞에 unsigned 키워드를 붙인다
ex) unsigned short value; 범위가 [-3만 ~ 3만]에서 [0 ~ 6만]으로 변하게 된다.
[실수형]
실수는 부동소수점(floating point) 방식을 표현된다.
float : 32비트
double : 64비트
long double : 64비트
[문자형]
- 문자는 컴퓨터보다는 인간에게 중요
- 문자도 숫자를 이용해서 표현
- 아스키코드 : 8비트를 사용해서 영어 알파벳 표현하는 것. !는 33, ‘A’는 65 ‘B’는 66 ‘a’는 97 등등…
대입 연산시 자동적인 형변환
int i;
i = 3.14592; // i에는 3이 저장됨
double f;
f = 10; // f에는 10.0이 저장된다.
+ C언어에서 %기호를 출력하고 싶으면 %%처럼 두 번 사용하면 된다.
- 컴퓨터는 기본적으로 계산하는 기계
- 수식 : 상수, 변수, 연산자의 조합
연산자와 피연산자로 나누어진다.
ex) 3.14(피연산자) *(연산자) radius(피연산자)
- 산술 연산 : 컴퓨터의 가장 기본적인 연산
덧셈,뺄셈,곱셈,나눗셈 등의 사칙 연산을 수행하는 연산자
- 나눗셈 연산자에서 정수형 끼리의 나눗셈에서는 결과도 정수형으로 나오고,
부동소수점형 끼리는 부동소수점 값을 생성한다
ex) 7 / 4는 1 7.0 / 4.0 은 1.75
- 나머지 연산자는 첫 번째 피연산자를 두 번째 피연산자로 나눴을 경우의 나머지를 계산
[수식에서의 자동적인 형변환]
사로 다른 자료형이 혼합하여 사용되는 경우, 더 큰 자료형으로 통일된다.
int형인 10과 dobule 1.2345를 더하면
int형인 10이 dobule인 10.0으로 변환되며,
최종적인 결과값도 double형인 11.2345이 된다.
형변환: 사용자가 데이터의 타입을 변경하는 것
(int) 1.23456 // int 형으로 변환
(double) x // double형으로 변환
(long) (x+y) // long 형으로 변환
증감연산자 : ++, —
변수의 값을 하나 증가시키거나 감소시키는 연산자
++x는 변수 x의 값을 하나 증가시킨다.
[++x와 x++의 차이점]
int x = 10;
y = ++x;
증가된 x의 값이 y에 대입된다. 즉 y는 11
int x = 10;
y = x++;
증가되지 않은 x의 값이 y에 대입된다. 즉 y는 10
—x와 x—도 마찬가지
[대입 연산자]
변수 = 수식
오른쪽 수식의 값을 계산하여 왼쪽 변수에 대입
ex) z = x + y;
100 = x + y;
변수가 아니어서 저장이 불가능하다. 컴파일 오류 뜸
x = x + 1;
변수의 값을 1만큼 증가시키는 것
[복합연산자]
+= 처럼 대입연산자 = 와 산술연산자를 합쳐놓은 연산자
x+=y 는 x = x + y와 의미가 같다
x-=y
x*=y
x/=y
x%=y 등이 있다.
[연산의 우선순위]
우선순위가 같으면 왼쪽에서 오른쪽으로 연산을 수행한다.
= 연산자는 오른쪽 우선 결합이므로 오른쪽부터 계산된다.
괄호 연산자는 가장 우선순위가 높다
즉 그냥 우선순위가 생각나지않으면 괄호를 이용하면 된다.
'프로그래밍 언어 > C언어 기초' 카테고리의 다른 글
교양과제 - 시간계산 프로그램 (0) | 2023.10.03 |
---|---|
C언어 printf()~scanf() (0) | 2023.09.26 |