여러 항(Item)들이 모여 구문(Statement)이 모여 Scope가 모여 Program
연산의 흐름 - Context
Context Switching - 흐름 변경
3+4+5 = 12
7 - 연산의 임시결과(변수에 저장)
12
(3) (1) (2)
nResult = 3 + 4 - 5
'='(단순 대입)
Copy & Overwrite
int a
a = 10;
변수 상수
l-value r-value
Left Right
Location
const int a = 10; - 상수화
a = 5;
이형자료 간의 연산 : 표현 범위가 큰 형식대로 변한다. → 형승격(type promotion)
'A' + 1
char + int = int
123.45 + 1
double int = double
(실수)
4.1.3 page 114 꼭 풀어봐라
5 ÷ 2 → 2.5(실수 - double)
5 / 2 → 2(소수점 이하 절사)
int int
5 / 2.0 → 2.5 %f 출력
int double → double
몫 + 나머지
/ ÷ - 두 번 계산해야 함
Computer 어떻게 나눌까?
7 / 2
7 - 2 = 5
5 - 2 = 3
3 - 2 = 1(나머지)
ex) 7 / 0 - Cpu 업 - 전기 업 - 열 업 - 저항 업 - 열 업 - 저항 업
절대로 0으로 나누면 안됨
page 123 꼭 이해
두수의 교환
int a = 3, b = 4, tmp;
tmp = a;
a = b;
b = tmp;
-----
a
복합대입연산자 - 10분
int a;
a = 0;
a = a+1
a+=1;
nTotal += 값
------
누적
int 2.5 ---> int 2 절사 : 정보의 변질
주소 = 극소
↓
ㅁㅁㅁㅁㅁㅁㅁㅁㅁ[ㅁㅁㅁㅁ]ㅁㅁㅁㅁㅁㅁㅁㅁㅁ
↑ int 결정 - 지정
1byte = 8bit ↑
char로 지정하면 강제형변환
int a = 0;
a = a+1;
a+=1;
++a; ---> a++;
전위식 후위식
A B | AND OR XOR NOT
0 0 | 0 0 0 0 → 1
1 0 | 0 1 1 1 → 0
0 1 | 0 1 1
1 1 | 1 1 0
Shift 연산자
0 x 83
[ㅁㅁ]1000 0011
마스크 연산에 비트연산자 사용
IP주소
192.168.0 |.10
--------- | ----
NET ID | Host
printf("%d\n", 3);
printf("%d\n", ~3(1의보수)+1 - 2의 보수);
'Language&Framework&Etc > C' 카테고리의 다른 글
6일차 - 기본제어문 (0) | 2017.05.29 |
---|---|
5일차 (0) | 2017.05.20 |
3일차 (0) | 2017.05.18 |
2일차 (0) | 2017.05.14 |
1일차 (0) | 2017.05.09 |