์์(expression)
- ์์, ๋ณ์, ์ฐ์ฐ์์ ์กฐํฉ
- ์ฐ์ฐ์์ ํผ์ฐ์ฐ์๋ก ๋๋์ด์ง๋ค.
3.14 * radius
*๋ ์ฐ์ฐ์์ด๊ณ 3.14, radius๋ ํผ์ฐ์ฐ์์ด๋ค.
๋จํญ ์ฐ์ฐ์ : ํผ์ฐ์ฐ์ ์๊ฐ 1๊ฐ
์ดํญ ์ฐ์ฐ์ : ํผ์ฐ์ฐ์ ์๊ฐ 2๊ฐ
์ผํญ ์ฐ์ฐ์ : ์ฐ์ฐ์์ ์๊ฐ 3๊ฐ (c์ธ์ด์์ ๋ง์ด ์ฌ์ฉํ๋ค.)
์ผํญ์ฐ์ฐ์
ex)
x ? y : z ;
=> x๊ฐ ์กฐ๊ฑด, true๋ฉด y, false๋ฉด z๊ฐ ๋๋ค.
์ผํญ ์ฐ์ฐ์๋ ์กฐ๊ฑด์ ๊ฒ์ฌํ๊ณ , ์กฐ๊ฑด์ด ์ฐธ์ด๋ฉด ์ฒซ ๋ฒ์งธ ํํ์(์ฌ๊ธฐ์๋ y)์ด ์คํ๋๊ณ ,
๊ฑฐ์ง์ด๋ฉด ๋ ๋ฒ์งธ ํํ์(์ฌ๊ธฐ์๋ z)์ด ์คํ๋๋ค.
๋ฐ๋ผ์ x๊ฐ ์ฐธ์ด๋ฉด y๊ฐ ์ ํ๋๊ณ , ๊ฑฐ์ง์ด๋ฉด z๊ฐ ์ ํ๋๋ค.
๊ธฐ๋ฅ์ ๋ฐ๋ฅธ ์ฐ์ฐ์์ ๋ถ๋ฅ
์ฐ์ ์ฐ์ฐ์
+ : ๋ง์
- : ๋บ์
* : ๊ณฑ์
/ : ๋๋์ ๋ชซ
% : ๋๋จธ์ง ์ฐ์ฐ์(modulus operator) : ๋ชจ๋๋ฌ ์ฐ์ฐ์
์ฆ๊ฐ ์ฐ์ฐ์
++ : 1์ฉ ๋ํ๋ค
-- : 1์ฉ ๋บ๋ค
y=++x ์ฆ๊ฐ ํ ๋์ ํ๊ณ ,
y=x++ ๋์ ํ, ์ฆ๊ฐ๋๋ค.
๋์ ์ฐ์ฐ์
- ์๋๋ ๊ฐ๋ฅํ ์ฐ์ฐ์ด๋ค.
y = x = 3
๋ณตํฉ ๋์ ์ฐ์ฐ์
: +=์ฒ๋ผ ๋์ ์ฐ์ฐ์ =์ ์ฐ์ ์ฐ์ฐ์๋ฅผ ํฉ์ณ๋์ ์ฐ์ฐ์์ด๋ค.
๋ณตํฉ๋์ ์ฐ์ฐ์ ์๋ฏธ
x += 1 x = x+1
๊ด๊ณ ์ฐ์ฐ์
== : ๊ฐ๋ค
!= : ๋ค๋ฅด๋ค
> : ํฌ๋ค
>= : ์ด์์ด๋ค
< : ์๋ค
<= : ์ดํ์ด๋ค
๋ ผ๋ฆฌ ์ฐ์ฐ์
&& AND ์ฐ์ฐ ๋ ์กฐ๊ฑด์ด ๋ชจ๋ ์ฐธ์ด์ด์ผ ์ฐธ์ด๋ค
|| OR ์ฐ์ฐ ๋ ์กฐ๊ฑด ์ค ํ๋๋ง ์ฐธ์ด์ด๋ ์ฐธ์ด๋ค
! NOT ์ฐ์ฐ
NOT ์ฐ์ฐ
- ๊ด๊ณ ์์์ด๋ ๋ ผ๋ฆฌ ์์์ด ์ฐธ์ด๋ฉด 1์ด ์์ฑ๋๊ณ ๊ฑฐ์ง์ด๋ฉด 0์ด ์์ฑ๋๋ค.
- ํผ์ฐ์ฐ์์ ์ฐธ, ๊ฑฐ์ง์ ๊ฐ๋ฆด๋๋ 0์ด ์๋๋ฉด ์ฐธ์ด๊ณ 0์ด๋ฉด ๊ฑฐ์ง์ผ๋ก ํ๋จํ๋ค.
- ์์๋ ๊ฑฐ์ง์ผ๋ก ํ๋จํ๋ค.
!0 // ์์ ๊ฐ์ 1
!3 // ์์ ๊ฐ์ 0
!-3 // ์์ ๊ฐ์ 0
result = !1; // result์๋ 0์ด ๋์ ๋๋ค
result = ! (2 == 3) // result์๋ 1์ด ๋์ ๋๋ค
์กฐ๊ฑด ์ฐ์ฐ์
absolute_value = ( x > y ) ? x : y ; // ์ ๋๊ฐ ๊ณ์ฐ
max_value = ( x > y) ? x : y ; // ์ต๋๊ฐ ๊ณ์ฐ
min_value = ( x < y ) ? x : y ; // ์ต์๊ฐ ๊ณ์ฐ
( age > 20 ) ? printf("์ฑ์ธ") : printf("์ฒญ์๋ ")
๋นํธ ์ฐ์ฐ์
๊ฐ๊ฐ์ ์๋ฆฌ์๋ง๋ค AND ์ฐ์ฐ์ ํ๋ค. ์ฆ, ๋นํธ๋ง๋ค ์ง์ง์ด์ ์ฐ์ฐ์ ํ๋ ๊ฒ์ด๋ค.
XOR์ ์ด์ฉํ ์ํธํ
- ํ๋์ ๋ฌธ์๋ฅผ ์ํธํํ๊ธฐ ์ํด์๋
encrpted_data = data^key; ํ๋ฉด ๋๋ค.
๋ณตํธํ๋ data = encrpted_data^key; ํ๋ฉด ๋๋ค.
๋นํธ ์ด๋ ์ฐ์ฐ์ ( shift ์ฌํํธ ์ฐ์ฐ์ด๋ผ๊ณ ๋ ํ๋ค.)
- ๋น ๋ฅธ ์ฐ์ฐ์ด ๊ฐ๋ฅํ๋ค.
<< ํ ์นธ์ฉ ์ผ์ชฝ์ผ๋ก ์ฎ๊ธฐ๋ฉด, 2๋ฐฐ ์ํจ๊ฒ๊ณผ ๊ฐ๋ค.
>> ํ ์นธ์ฉ ์ค๋ฅธ์ชฝ์ผ๋ก ์ฎ๊ธฐ๋ฉด, ๋๋๊ธฐ 2๋ฅผ ํ ๊ฒ๊ณผ ๊ฐ๋ค.
ํ๋ณํ
- ์คํ ์ค์ ๋ฐ์ดํฐ์ ํ์ ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ด๋ค.
์ฌ๋ฆผ๋ณํ
double f;
f = 10
=> 10.0์ผ๋ก ์ ์ฅ๋๋ค.
๋ด๋ฆผ๋ณํ
int i;
i = 3.141592
=> 3์ผ๋ก ์ ์ฅ๋๋ค. (์์์ ์ดํ ๋ฒ๋ฆผ์ ๊ธฐ๋ฅ์ด ๊ฐ๋ฅํ๋ค)
์๋ ํ๋ณํ
int 10 + double 1.2345
=> double 10.0 + double 1.2345 // int๊ฐ double ํ์ผ๋ก ์น๊ธ๋๋ค.
=> 11.2345 // ์ ์ฒด ์์์ ๊ฒฐ๊ณผ๊ฐ๋ double ํ์ด ๋๋ค.
ํ๋ณํ ํ๋ ๋ฐฉ๋ฒ
(int)1.23456 // intํ์ผ๋ก ๋ณํ
(double) x // doubleํ์ผ๋ก ๋ณํ
(long) (x+y) // longํ์ผ๋ก ๋ณํ
๊ฒฐํฉ ๊ท์น
- ๋ง์ฝ ๊ฐ์ ์ฐ์ ์์๋ฅผ ๊ฐ์ง๋ ์ฐ์ฐ์๋ค์ด ์ฌ๋ฌ๊ฐ ์์ผ๋ฉด ์ด๋ค ๊ฒ์ ๋จผ์ ์ํํ์ฌ์ผ ํ๋๊ฐ?์ ๋ํ ๊ท์น
'C Programming Language > C' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
C์ธ์ด Basic ๋ฐ๋ณต๋ฌธ while, for ๊ฐ๋ (0) | 2024.06.18 |
---|---|
C์ธ์ด Basic ์กฐ๊ฑด๋ฌธ if, switch ๊ฐ๋ (0) | 2024.06.18 |
C์ธ์ด ๋ณ์์ ๋ํด ํ์ตํ๊ธฐ (2) (2) | 2024.06.12 |
C์ธ์ด ๋ณ์์ ๋ํด ํ์ตํ๊ธฐ (2) | 2024.06.11 |
C์ธ์ด ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ์ basic (๊ธฐ๋ณธ) (0) | 2024.06.10 |