논리형
논리형은 bool : true / false
입력 : 0이 아닌 값 -> true, 0 -> false
출력 : true -> 1, false -> 0
#include <iostream>
using namespace std;
int main()
{
bool a=true;
cout << "a= " << a << endl; // 1
a=false;
cout << "a= " << a << endl; // 0
a=-98;
cout << "a= " << a << endl; // 1
a=0;
cout << "a= " << a << endl; // 0
return 0;
}
관계연산자
관계 연산자의 결과 -> true / false
연산 | 연산자 | 설명 |
크다, 크거나 같다 | >, >= | 10>3 à true, 20>=60 à false |
작다, 작거나 같다 | <, <= | 10<10 à false, 13<=10 à false |
같다 | == | 20 == 20 à true |
다르다 | != | 20 != 30 à true |
논리연산자
논리 연산자의 결과 -> true / false
연산 | 연산자 | 설명 |
논리곱(AND) | && | (3+10) && (4<3) à true && false è false |
논리합(OR) | || | (3+10) || (4<3) à true && false è true |
논리부정(NOT) | ! | !3 à false, !(4<3) à true |
예제
#include <iostream>
using namespace std;
int main()
{
bool a;
a = 10 > 3;
cout << "10>3 의 결과" << a << endl; // 1
a = 13 <= 10;
cout << "13<=10 의 결과" << a << endl; // 0
a = 20 != 20;
cout << "20!=20 의 결과" << a << endl; // 0
a = (3 + 10) && (4 < 3);
cout << "(3+10) && (4<3) 의 결과" << a << endl; // 0
a = (3 + 10) || (4 < 3);
cout << "(3+10) || (4<3) 의 결과" << a << endl; // 1
a = !3;
cout << "!3 의 결과" << a << endl; // 0
return 0;
}
비트연산자1
연산 단위 : 비트!!
비트 단위 확인을 위해 16진수로 표기
아래처럼 출력에서 10진수, 16진수, 8진수로 형식 지정할 수 있다.
#include <iostream>
using namespace::std;
int main()
{
int a=1234, b=0x12345678;
cout << hex << "16진수 a =" << a << dec << "\t\t10진수 a = " << a << endl;
cout << hex << "16진수 b =" << b << dec << "\t10진수 b = " << b << endl;
return 0;
}
비트연산자2
비트단위로 처리
특히, 시프트 연산에서
16진수는 한자리가 4비트이니 >>4 가 한자리 미는거겟쥬?
'C > [언어본색] C 기초' 카테고리의 다른 글
[언어 본색] #14 3장 - 반복문의 중복 (0) | 2021.09.30 |
---|---|
[언어 본색] #10 2장 - 논리형 (2) (0) | 2021.09.30 |
[언어 본색] #08 2장 - 형변환 (0) | 2021.09.30 |
[언어 본색] #07 2장 - 컴퓨터가 표현하는 데이터 (0) | 2021.09.29 |
[언어 본색] #06 2장 - 변수와 상수 (3) (0) | 2021.09.29 |