[ 흥달쌤 유투브 강의 정리 ]
https://www.youtube.com/watch?v=ARiPYzAuzmg
(12강) 매크로, 비트연산
* 매크로란 ?
반복적인 일들을 쉽게 하기 위해 만들어 놓은 것.
#define N 10 => 모든 N은 10으로 대체.
#define SQR(X) X*X => X라는 인자를 받으면 X*X로 처리. (함수형태)
SQR(N); => SQR(10) => 10 * 10 => 100
SQR(N+2); => N + 2 * N + 2 => 10 + 2 * 10 + 2 => 10 + 20 + 2 => 32 ** 매크로일때**
* 비트연산자 종류
* 시프트연산 ( >> )
1) 10 >> 2 (우시프트)
10 == (이진수변환) ==> 1010
우측으로 두개만큼 밀기
=> 10 == (십진수변환) ==> 2
1) 10 << 2 (좌시프트)
10 == (이진수변환) ==> 1010
좌측으로 두개만큼 밀고 자리는 0으로 채우기
=> 101000 == (십진수변환) ==> 40
VALUE1 => 1로 대체 // VALUE2 => 2로 대체
i = 100 / 300 ==(정수/정수=정수)==> 0.0 ( 100/300 은 정수0이지만 변수 i는 실수이기 때문에 0.000.. )
j = 0
k = (0011) => 3
m = j + l => 0 + 3 = 3
출력형식 10강 참고**
=> i = 0.0 j = 0 k = 3 m = 003
(13강) 삼항연산자 (조건연산자)
* 삼항연산자
조건에 따라서 다른 명령을 수행하는 연산자.
구조 : 조건 ? 참 : 거짓.
int a = 10 > 5 ? 10 : 5
printf ( "%d", a );
=> 10
=> b = 40
'정보처리기사 > c언어강의' 카테고리의 다른 글
[C언어(강의)] 19강~20강 (for, continue, break, 다중for문) (0) | 2024.06.22 |
---|---|
[C언어(강의)] 14강~18강 (if문, switch문, 반복문, for문, while문, do~while문) (0) | 2024.06.02 |
[C언어(강의)] 11강 (진법변환, 비트연산) (0) | 2024.05.25 |
[C언어(강의)] 9~10강 (산술연산자, 출력형식) (0) | 2024.05.15 |
[C언어(강의)] 1~8강 (변수, 데이터 타입, 연산자) (0) | 2024.02.04 |