´ëÀÔ ¿¬»êÀÚ(Assignment
operator)´Â = ÀÇ ¿À¸¥ÂÊ¿¡ ÀÖ´Â °ªÀ̳ª
¿¬»ê °á°ú¸¦ ¿ÞÂÊÀÇ
º¯¼ö¿¡ ±â¾ï½ÃŰ´Â ¿¬»êÀڷμ
ÇÒ´ç ¿¬»êÀÚ ¶Ç´Â
ġȯ ¿¬»êÀÚ¶ó°íµµ ÇÕ´Ï´Ù. ÀÏ¹Ý ´ëÀÔ ¿¬»êÀÚ¿Í È¥ÇÕµÈ
ÇüÅÂÀÇ ´ëÀÔ ¿¬»êÀÚ°¡
Àִµ¥ È¥ÇÕµÈ ÇüÅÂÀÇ
´ëÀÔ ¿¬»êÀÚ´Â ¼ö½ÄÀ»
°£°áÇÏ°Ô Ç¥ÇöÇÒ ¼ö
ÀÖÁö¸¸ ¿¬»êÀÇ ¿ì¼±
¼øÀ§¿¡ À¯ÀÇÇØ¾ß ÇÕ´Ï´Ù.
|
¿¬»êÀÚ |
±â ´É |
»ç¿ë ¿¹ |
|
= |
¿ìº¯ÀÇ °á°ú¸¦ ÁÂÃø º¯¼ö¿¡
±â¾ï |
a=b+c |
|
+= |
a=a+b |
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 |
a&=b |
|
|= |
a=a|b |
a|=b |
|
^= |
a=a^b |
a^=b |
|
<<= |
a=a<<b |
a<<=b |
|
>>= |
a=a>>b |
a>>=b |
¡¼¼Ò½º
ÇÁ·Î±×·¥¡½
//File Name : ex052_operator12.c
#include <stdio.h>
int main(void){
int a=10, b=5, c=3;
a-=b; ------------- ¨ç
b*=a+c; -------------
¨è
c+=b+=a; ------------- ¨é
printf("a=%2d, b=%2d, c=%2d\n", a, b, c);
}
¡¼½ÇÇà
°á°ú¡½
a= 5, b=45, c=48
À§ ÇÁ·Î±×·¥ ½ÇÇà °á°ú
¨ç ¹®ÀåÀº a=a-b¸¦, ¨è ¹®ÀåÀº ¿¬»êÀÇ
¿ì¼± ¼øÀ§°¡ a+c°¡ ³ôÀ¸¹Ç·Î ¸ÕÀú
½ÇÇàÇϰí b*=(°á°ú)¸¦ ½ÇÇàÇÕ´Ï´Ù. ¨é ¹®ÀåÀº ´ëÀÔ
¿¬»êÀÚÀÇ °áÇÕ ¼øÀ§°¡
¿ìÃø¿¡¼ ÁÂÃøÀ̹ǷΠb+=a¸¦ ¸ÕÀú ¿¬»êÇϰí
±× °á°ú¸¦ °¡Áö°í c+=(°á°ú)¸¦ ¿¬»êÇÑ´Ù.
»ç½Ç ÇÊÀÚ´Â ¨ç°ú °°Àº
¹®ÀåÀº »ç¿ëÇÏÁö¸¸, ¨è¿Í ¨é°°Àº ¹®ÀåÀº
º°·Î »ç¿ëÇÏÁö ¾Ê½À´Ï´Ù. ´Ù¼Ò ÀԷ·®ÀÌ ¸¹´õ¶óµµ ¨è
´ë½Å¿¡ b=b*(a+c);
·Î ÀÛ¼ºÇÕ´Ï´Ù. ±×¸®°í ¨é°ú °°Àº
Çü½ÄÀ» »ç¿ëÇÏ´Â ÇÁ·Î±×·¡¸ÓÀº
º°·Î ¾øÀ» °ÍÀÔ´Ï´Ù.