c - 시스템 sw 개발, 임베디드, 모바일 디바이스, linux
c++ (c#) - windows AP, 게임, 산업용
Java - SI개발
Python - 빅데이터, AI
코틀린
프로그램 = 자료구조 (변수선언) + 알고리즘
컴파일러 - 전체 (c c++ java)
인터프리터 - 문장단위 (python)
한정자 – 접근 지정자 + 멤버변수의 종류 + 타입
- 접근 지정자 + 메소드의 종류 + 리턴 타입
(1) package 선언
(2) Import 구문
(3) class (한정자) 클래스 이름 {
(4) 필드 (또는, 멤버변수)
(5) 생성자 (일종의 특수메소드)
(6) (한정자) 메소드 (또는, 멤버함수)
}
package - 저장 경로 / 없으면 default
import -> python이랑 똑같음 (built-in-function)
자동 생성 고수준 io
| |
파일 <--> 버퍼 <--> 유저
| |
시스템제어 배열
버퍼링
1. full buffering
음수 표현
int z = -12
0 1 1 1 0
-1 1 1 1 0
연산 순위
x = 1
y = 2
z = ++x * y++
x = 3
z = 2 * 2
y = 3
z = ++x * ++y
x = x + 1
y = y + 1
z = x * y
i = 3
j = ++i * ++i
i = i + 1
i = i + 1
j = i * i = 25
비트연산자
x = 3 ...0011
y = 5 ...0101
x & y = 0001
x:y = 0111
x^y = 0110
x = x << 2 ...1100 밀어주고 빈자리 0
x << n ==> x * 2^n
산술쉬프트 (arithmetic shift)
x >> 2 부호자리로채워줌
논리 쉬프트 (logical shift)
x >>> 2 부호 관계없이 왼쪽 빈공간에 무조건 0으로
비트가 all one 이라면 -1
2의 보수 취하고 -값 취해주자