2017-05-04 74 views
4

我在documentation中搜索^ = assigment操作符。^=運算符在Perl中做什麼?

我能找到到目前爲止,唯一的一點是:

其他賦值運算符類似的工作。確認以下內容:

**= += *= &= &.= <<=  
    -= /= |= |.= >>= ||= 
    .= %= ^= ^.= //= &&= 

什麼是$c ^= $r;結果呢?

+0

它是** xor運算符的語法糖**'$ xor_sum = $ xor_sum^$ i;'可以寫成$ xor_sum^= $ i;'' – AbhiNickz

+2

@AbhiNickz啊,它是按位運算符的賦值版本。謝謝!請添加爲答案。 – Beginner

+0

評論已添加爲答覆:) – AbhiNickz

回答

9

在Perl ^=XOR運算符一個語法糖

$xor_sum = $xor_sum^$i; 

可以看到形式的Perl表達式的任何時間被重寫爲

$xor_sum ^= $i; 
3

$l op= $r; 

它可以被改寫爲:

$l = $l op $r; 

(好吧,我說「任何時間」,但可能有例外。 Perl中總是有例外。 )