본문 바로가기
프로그램 개발

[C언어] 논리 연산자

by DRIN 2016. 10. 4.

목차

    반응형

    오늘은 "논리 연산자"에 대해서 배워보려합니다.


    지금부터 말씀드릴 논리 연산자는 저번 시간에 설명드린 관계 연산자와 같이 쓰이게 됩니다.

    바늘 가는데 실 간다고 관계 연산자가는데 논리 연산자가 가게됩니다.


    논리 연산자는 "&&, ||, !"가 있습니다.

    &&은 and 연산자라고도 합니다.

    두 개의 조건이 있을때 두 조건 모두 충족해야지만 참이 되는 것이죠.


    예를 들면 a==b&&a!=b라고 하게되면 이 조건은 무조건 거짓이 되어버리죠.

    같다와 다르다는 공존할 수가 없기 때문입니다.


    다음으로 ||는 or 연산자라고도 합니다.

    두 개의 조건이 있을때 하나의 조건이라도 충족하면 참이되는 겁니다.

    a==b||a!=b라고 쓰게되면 이 조건은 무조건 참이 됩니다.


    같다고 할 경우 한 조건이 참이니 최종적으로 참이되고,

    다르다고 할 경우도 한 조건이 참이니 최종적으로 참이됩니다.


    그리고 저번 관계연산자에서도 보였던 !연산자가있는데 not 연산자라고도 합니다.

    참이면 거짓으로 바꿔주고 거짓이면 참으로 바꿔줍니다.


    !(a==b||a!=b)이라고 쓰게되면, 무조건 거짓이 됩니다.

    괄호안에 있는 내용이 참이니 뒤 바뀌어 거짓으로 바뀌게 되는 것이죠.


    여기서 우리는 연산의 우선순위를 알수있습니다.

    "관계연산자가 논리연산자보다 먼저 실행되는 구나!" 라고요.


    그리고 C언어에서는 0외의 숫자를 모두 참이라고 합니다.


    int num=34;

    int result;

    라고 선언 되었을때


    result=(!num);

    이라고 하게 되면 result에는 0이라는 값이 들어가게 됩니다.


    그럼 0에 not 연산자를 붙이면 어떻게 될까요?


    직접 실습해 보시기 바랍니다.

    2016/10/03 - [C 언어] - [C언어] 관계 연산자(조건문 살짝)

    2016/10/03 - [C 언어] - [C언어] 증가, 감소 연산자(양수, 음수)

    2016/10/03 - [C 언어] - [C언어] 복합 대입 연산자


    반응형