๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Programming/C language

5 Operator

by Dowon Kang 2024. 1. 23.

C ์–ธ์–ด์˜ ์—ฐ์‚ฐ์ž์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. C ์–ธ์–ด๋Š” ๋‹ค์–‘ํ•œ ์—ฐ์‚ฐ์ž๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์‚ฐ์ˆ , ๋…ผ๋ฆฌ, ๋น„๊ต, ๋Œ€์ž… ๋“ฑ ๋‹ค์–‘ํ•œ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์—์„œ ๋ช‡ ๊ฐ€์ง€ ์ฃผ์š”ํ•œ ์—ฐ์‚ฐ์ž๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

 

1) ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž (Arithmetic Operators)

 

   + (๋”ํ•˜๊ธฐ)

   - (๋นผ๊ธฐ)

   * (๊ณฑํ•˜๊ธฐ)

   / (๋‚˜๋ˆ„๊ธฐ)

  % (๋‚˜๋จธ์ง€)

 

 

 

 

2) ์ฆ๊ฐ ์—ฐ์‚ฐ์ž (Increment and Decrement Operators)

 

 

 

3) ๊ด€๊ณ„ ์—ฐ์‚ฐ์ž (Relational Operators)

 == (๊ฐ™์Œ)
 != (๊ฐ™์ง€ ์•Š์Œ)
 < (์ž‘๋‹ค)
 > (ํฌ๋‹ค)
 <= (์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค)
 >= (ํฌ๊ฑฐ๋‚˜ ๊ฐ™๋‹ค)

 

 

 

4) ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž (Logical Operators)

 

&& (๋…ผ๋ฆฌ AND)
 || (๋…ผ๋ฆฌ OR)
 ! (๋…ผ๋ฆฌ NOT)

 

 

 

 

5) ๋น„ํŠธ ์—ฐ์‚ฐ์ž (Bitwise Operators)

 

x = 5 = 0 0 0 0 0 1 0 1 
y = 3 = 0 0 0 0 0 0 1 1

 

& (๋น„ํŠธ AND)  : 0 0 0 0 0 0 0 1 = 1 (๋ชจ๋‘ ๋‹ค ์ง„์‹ค) 

| (๋น„ํŠธ OR) : 0 0 0 0 0 1 1 1 = 7 (๋‘˜ ์ค‘์— ํ•˜๋‚˜๋ผ๋„ ์ง„์‹ค) 

^ (๋น„ํŠธ XOR) : 0 0 0 0 1 1 0 = 6 (XOR : ๋‘˜ ์ค‘์— ํ•˜๋‚˜๋ผ๋„ ๊ฑฐ์ง“)

๋”๋ณด๊ธฐ

 

#include <stdio.h>

int main() {
    int x = 5;  // 0101 in binary
    int y = 3;  // 0011 in binary

    int result = x ^ y;  // XOR operation

    printf("Result: %d\n", result);  // Output: 6 (0110 in binary)

    return 0;
}

~ (๋น„ํŠธ NOT) : 1 1 1 1 1 0 1 0 → 0 0 0 0 0 1 0 1 → + 1 → 0 0 0 0 0 1 1 0 → -6 (์›๋ž˜ 2์ง„์ˆ˜ ๊ฐ’์ด ์Œ์ˆ˜)

๋”๋ณด๊ธฐ

#include <stdio.h>

int main() {
    int a = 5;  // 0101 in binary

    int result = ~a;  // Bitwise NOT operation

    printf("Result: %d\n", result);  // Output: -6 (11111010 in two's complement binary)

    return 0;
}

<< (๋น„ํŠธ ์™ผ์ชฝ ์‹œํ”„ํŠธ) : 0 0 0 0 1 0 1 0 = 10

>> (๋น„ํŠธ ์˜ค๋ฅธ์ชฝ ์‹œํ”„ํŠธ) : 0 0 0 0 0 0 1 0 = 2

 

 

6) ์กฐ๊ฑด ์—ฐ์‚ฐ์ž (Conditional Operator)

?&nbsp;:&nbsp;(์‚ผํ•ญ&nbsp;์—ฐ์‚ฐ์ž)

 

 

์—ฐ์‚ฐ์ž ์šฐ์„ ์ˆœ์œ„

 

'Programming > C language' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

7 if & switch  (2) 2024.01.23
6 scanf ํ•จ์ˆ˜ (feat. format specifiers)  (0) 2024.01.23
4 Constant  (1) 2024.01.23
3 Variable  (0) 2024.01.22
2 Hello world  (0) 2024.01.22

๋Œ“๊ธ€