C 스터디 2주차
자료형
정수형 (char, short, int, long) 실수형 (float, double, long double)
32비트 운영체제 기준
정수형 | 메모리 크기 | 데이터 표현 범위 |
---|---|---|
char | 1byte (8bit) | -128 ~ +127 |
short | 2byte (16bit) | -32768 ~ +32767 |
int | 4byte (32bit) | -2147483648 ~ +2147483647 |
long | 4byte (32bit) | -2147483648 ~ +2147483647 |
실수형 | 메모리 크기 | 데이터 표현 범위 |
---|---|---|
float | 4byte (32bit) | -1.17x10-38 ~ 3.40x1038 |
double | 8byte (64bit) | -2.22x10-308 ~ 1.79x10308 |
long double | 8byte (64bit) | -2.22x10-308 ~ 1.79x10308 |
정수형은 int형을 선호
CPU가 int형을 가장 빠르게 처리 만약 char형 변수에 저장하여 연산을 할 경우 그 데이터를 int형으로 바꿔서 연산함
실수형은 double형을 선호
float보다 소수점 계산 정밀함
문자형은 char형을 선호
char c = 'a';
서식 문자
서식 문자 | 출력 형태 |
---|---|
%d, %i | 10진수 정수 |
%x, %o | 16진수 정수 (양수만 가능) |
%f, %lf | 10진수 실수 |
%c | 한 개의 문자 |
%s | 문자열 |
기타 등등....
연산자
분류 | 연산자 |
---|---|
대입 연산자 | = |
산술 연산자 | +, -, *, /, % |
복합 대입 연산자 | +=, ==<, *=, /=, %= |
증감 연산자 | ++, -- |
관계 연산자 | >, <, ==, !=, >=, <= |
논리 연산자 | &&, ||, ! |
조건 연산자 | ?: |
기타 등등....
++a, a++ 차이점
++a(선 증가, 후 연산), a++(선 연산, 후 증가)
int a=0;
printf("%d",++a);
//결과는 1
int a=0;
printf("%d",a++);
//결과는 0
조건문
//기본형
if (조건식) {
내용1
}
else if (조건식) {
내용2
}
else {
내용3
}
while문
//기본형
while (조건식) {
반복할 내용
}
while (조건식) {
while (조건식) {
반복할 내용
}
반복할 내용
}
//무한 반복문
while(1) {
반복할 내용
}
/*조건에 0이 아닌 정수가 입력이 되면 참이된다
반복을 하다가 break를 만나면 반복문을 탈출*/