C Operator, C++ Operator   C 연산자, C++ 연산자

(2019-02-26)

연산자

1. C 언어에서, 연산자 종류산술 연산자       :  +  -  *  /  %
     -  + (덧셈), - (뺄셈), * (곱셈), / (나눗셈), % (나머지)

  ㅇ 부호 연산자       :  +  -

  ㅇ 대입 연산자       :  =  +=  -=  *=  /=  %=
     -  `=`  : (오른쪽 값을 평가 연산하고, 그 결과를 왼쪽에 대입)
     -  `+=` : 例) a += b => a = a + b
     -  `-=` : 例) a -= b => a = a - b 
     -  `*=` : 例) a *= b => a = a * b
     -  `/=` : 例) a /= b => a = a / b
     -  `%=` : 例) a %= b => a = a % b

  ㅇ 비교 연산자 (6개) :  ==  !=  <=  <  >=  >
     - C 언어는, 논리값 상수(true,false)을 제공 안하므로, 1(true),0(false)을 사용

  ㅇ 증감 연산자       :  ++  --
     - 例) a++ (주변 연산을 진행한 후 1 증가), ++a (1 증가시킨 후 주변 연산을 진행)

  ㅇ 논리 연산자       :  ||  &&  !

  ㅇ 비트 연산자       :  |  &  ~  >>  <<  ^
     -  | (비트 OR), & (비트 AND), ~ (비트 반전 NOT), ^ (비트 XOR),
        << (왼쪽 시프트), >> (오른쪽 시프트)

  ㅇ 포인터 연산자     :  *  &  []
     - &op : 변수 op가 위치한 메모리의 주소를 구함
     - *op : 포인터 변수 op가 갖는 주소에 저장된 값을 구함

  ㅇ 구조체(Structure) 연산자     :  .  ->

  ㅇ 삼항 조건 연산자  :  ?:
  ㅇ 쉼표 연산자       :  ,
  ㅇ sizeof 연산자     :  sizeof
  ㅇ 캐스트 연산자     : (타입) 표현식
  ㅇ 괄호 연산자       :  ()

  ㅇ C++ 연산자        :  new  delete  ::  .*  ->*


2. 연산자 우선순위(precedence) 및 결합법칙

  ㅇ 최우선 => [결합방향 : 좌에서 우로 →]
     - (괄호 연산자) (식)                                          
  ㅇ 순위 1 => [결합방향 : 좌에서 우로 →]
     - (후위 증감 단항 연산자) ++  -- , (함수 호출) (), (배열 인덱스) [] ,
       (구조체 멤버) . , (구조체 포인터) -> , (복합 리터럴) (type){list}
  ㅇ 순위 2 => [결합방향 : 우에서 좌로 ←]
     - (전위 증감 단항 연산자) ++  -- , (부호) +  - , (논리 연산자) !  ~ , (형변환) (type) ,
       (간접 참조 연산자) * , (주소 추출 연산자) & , (크기 계산 연산자) sizeof 
  ㅇ 순위 3 => [결합방향 : 좌에서 우로 →] 
     - (산술 연산자) *  /  %
  ㅇ 순위 4 => [결합방향 : 좌에서 우로 →] 
     - (산술 연산자) +  - 
  ㅇ 순위 5 => [결합방향 : 좌에서 우로 →] 
     - (비트 연산자) <<  >> 
  ㅇ 순위 6 => [결합방향 : 좌에서 우로 →] 
     - (비교 연산자) <  <=  > >=
  ㅇ 순위 7 => [결합방향 : 좌에서 우로 →]
     - (비교 연산자) ==  !=
  ㅇ 순위 8 => [결합방향 : 좌에서 우로 →]
     - (비트 연산자 AND) &
  ㅇ 순위 9 => [결합방향 : 좌에서 우로 →]
     - (비트 연산자 XOR) ^
  ㅇ 순위 10 => [결합방향 : 좌에서 우로 →]
     - (비트 연산자 OR) |
  ㅇ 순위 11 => [결합방향 : 좌에서 우로 →]
     - (논리 연산자 AND) &&
  ㅇ 순위 12 => [결합방향 : 좌에서 우로 →]
     - (논리 연산자 OR) ||
  ㅇ 순위 13 => [결합방향 : 우에서 좌로 ←]
     - (삼항 연산자) ? :
  ㅇ 순위 14 => [결합방향 : 우에서 좌로 ←]
     - (대입 연산자) = ,  (산술 대입 연산자) +=  -+  *=  /=  %= ,
       (복합 대입 연산자) <<=  >>=  &=  ^=  |=
  ㅇ 순위 15 => [결합방향 : 좌에서 우로 →]
     - (콤마 연산자) ,


[C] 1. C 언어 2. C 기초 문법 3. C 연산자
[C 언어 컴파일] [C 변수,상수,자료형] [C 함수] [포인터]
  1.   기술공통
  2.   기초과학
  3.   진동/파동
  4.   방송/멀티미디어/정보이론
  5.   전기전자공학
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
          1. 프로그램,프로그래밍
      1.   프로그래밍 언어론
      2.   구조적 프로그래밍
      3.   객체지향 프로그래밍
      4.   자료표현코드
      5.   자료구조
      6.   알고리즘
      7.   시스템 소프트웨어
      8.   프로그래밍언어 종류
            1. 프로그래밍 언어
        1.   C
              1. C 언어
              2. C 기초 문법
              3. C 연산자
          1.   C 언어 컴파일
          2.   C 변수,상수,자료형
          3.   C 함수
          4.   포인터
        2.   C++
        3.   자바(Java)
        4.   자바스크립트
        5.   PHP
        6.   파이썬
        7.   (기타 언어)
      9.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   공업일반(기계,재료등)
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     요약목록     참고문헌