Perl 제3장 조작부호

6191 단어 perl
[산수 조작부호]
 
+(더하기), -(빼기), *(곱하기),/(제외), **(곱하기),% (나머지), -(단일 음) (1) 곱하기의 기수는 마이너스가 될 수 없습니다. 예를 들어 (-5)**2.5#error;(2) 곱셈 결과는 컴퓨터가 표시하는 제한을 초과해서는 안 된다. 예를 들어 10**9999#error(3) 나머지 작업수는 정수가 아닌 경우 반올림하여 정수로 계산한다.연산자 오른쪽은 0 (4) 단목음으로 사용할 수 없습니다. 변수 ∶-$y;#$y * -1과 동일
 
[정수 비교 조작부호]
 
조작부호
묘사
<
... 보다 작다
>
... 보다 크다
==
... 과 같다
<=
... 보다 작다
>=
... 보다 크다
!=
... 과 같지 않다
<=>
비교, 반환 1, 0, or-1
조작부호 <=> 결과 ∶0 - 두 개의 값이 같다 1 - 첫 번째 값이 크다 - 1 - 두 번째 값이 크다
 
[문자열 비교 조작부호]
 
조작부호
묘사
lt
... 보다 작다
gt
... 보다 크다
eq
... 과 같다
le
... 보다 작다
ge
... 보다 크다
ne
... 과 같지 않다
cmp
비교, 반환 1, 0, or-1
 
[논리 조작부호]
 
논리 또는 ∶$a | $b 또는 $a or $b 논리와 ∶$a & & $b 또는 $a and $b 논리는 ∶! $a 또는 not $a 논리적 오류 또는 ∶$a xor $b
 
[비트 조작부호]
 
비트와∶&비트 또는∶|비트는 ∶~비트가 다르거나 ∶^ 왼쪽으로 이동하면 ∶$x<1 오른쪽으로 이동하면 ∶$x>> 2 주: 정수에 사용하지 마십시오. 왜냐하면 PERL은 그것들을 기호가 없는 수로 바꾸기 때문입니다.
 
【값 부여 조작부호】
 
값 부여 조작부호∶
조작부호
묘사
=
Assignment only
+=
Addition and assignment
-=
Subtraction and assignment
*=
Multiplication and assignment
/=
Division and assignment
%=
Remainder and assignment
**=
Exponentiation and assignment
&=
Bitwise AND and assignment
|=
Bitwise OR and assignment
^=
Bitwise XOR and assignment
값 부여 조작부호 예:
표현식
등효 표현식
$a = 1;
none (basic assignment)
$a -= 1;
$a = $a - 1;
$a *= 2;
$a = $a * 2;
$a/= 2;
$a = $a/2;
$a %= 2;
$a = $a % 2;
$a **= 2;
$a = $a ** 2;
$a &= 2;
$a = $a & 2;
$a |= 2;
$a = $a | 2;
$a ^= 2;
$a = $a ^ 2;
 
= ∶$value1 = $value2 = "astring"과 같은 값 부여 문장에 여러 번 나타날 수 있습니다.= 하위 표현식($a = $b)+= 3;$a = $b와 같습니다. $a += 3; 하지만 이런 방식은 사용하지 않는 것을 권장합니다.
 
[자증자감 조작부호]
 
++, --(C++의 사용법과 동일) 변수 양쪽에 이 조작부호를 사용하지 마십시오 ∶+$var--#error는 변수가 증가/감소한 후에 같은 표현식에서 다시 사용하지 마십시오 ∶$var2 = $var1+++$var1;#error는 PERL에서++로 문자열에 사용할 수 있지만 끝 문자가'z','Z','9'일 때 진입합니다. 예를 들어 ∶
   $stringvar = "abc";
 $stringvar++; # $stringvar contains "abd" now

 $stringvar = "aBC";
 $stringvar++; # $stringvar contains "aBD" now

 $stringvar = "abz";
 $stringvar++; # $stringvar now contains "aca"

 $stringvar = "AGZZZ";
 $stringvar++; # $stringvar now contains "AHAAA"

 $stringvar = "ab4";
 $stringvar++; # $stringvar now contains "ab5"

 $stringvar = "bc999";
 $stringvar++; # $stringvar now contains "bd000"
 
사용하지 마십시오 – PERL은 문자열을 숫자로 변환한 후 자동 감량합니다.
$stringvar = "abc";
$stringvar--; # $stringvar = -1 now

 
문자열에 알파벳이 아닌 문자가 있거나 숫자가 알파벳에 있는 경우++ 연산 전 값을 숫자 0으로 변환하므로 결과는 1입니다. 예를 들어 ∶
 $stringvar = "ab*c";
 $stringvar++;
 $stringvar = "ab5c";
 $stringvar++;
 
[문자열 연결 및 반복 조작부호]
 
연결:.반복 ∶x 연결 및 할당 값 (유사 +=) ∶. =예:
 $newstring = "potato" . "head";
 $newstring = "t" x 5;
 $a = "be";
 $a .= "witched"; # $a is now "bewitched"
 
[쉼표 조작부호]
 
그 앞의 표현식은 먼저 연산을 진행한다. 예를 들어∶
$var1 += 1, $var2 = $var1;

... 과 같다
 $var1 += 1;
 $var2 = $var1;

 
이 조작부호를 사용하는 유일한 이유는 프로그램의 가독성을 높이고 밀접한 관계를 가진 두 가지 표현식을 결합시키는 것이다. 예를 들어∶
 $val = 26;
 $result = (++$val, $val + 5); # $result = 32
 
여기에 괄호가 없으면 의미가 다르다는 것을 주의하세요:
 $val = 26;
 $result = ++$val, $val + 5; # $result = 27
 
[조건 조작부호]
 
C와 유사, 조건?값 1: 값 2, 조건이 진짜일 때 값 1, 가짜일 때 값 2, 예를 들어 ∶
 $result = $var == 0 ? 14 : 7;
 $result = 43 + ($divisor == 0 ? 0 : $dividend / $divisor);
 
PERL 5에서는 조건 조작부호를 사용하여 할당된 변수를 선택할 수 있습니다. 예를 들어 ∶
 $condvar == 43 ? $var1 : $var2 = 14;
 $condvar == 43 ? $var1 = 14 : $var2 = 14;
 
[조작부호의 순서]
 
조작부호의 순서:
조작부호
묘사
++ , --
늘다
- , ~ , !
단목
**
제곱
=~ , !~
패턴 일치
* ,/, % , x
타다
+ , - , .
더하다
<< , >>
자리를 옮기다
-e , -r , etc.
파일 상태
< , <= , > , >= , lt , le , gt , ge
비교를 기다리지 않다
== , != , <=> , eq , ne , cmp
서로 비교하다
&
위치와
| , ^
비트 또는
&&
논리와
||
논리 또는
..
목록 범위
? and :
조건 조작부호
= , += , -= , *= ,
값을 매기다
and so on
 
,
쉼표 연산자
not
Low-precedence logical NOT
and
Low-precedence logical AND
or , xor
Low-precedence logical OR and XOR
조작부호 결합성(associativity)∶
조작부호
결합성
++ , --
없다
- , ~ , !
Right-to-left
**
Right-to-left
=~ , !~
Left-to-right
* ,/, % , x
Left-to-right
+ , - , .
Left-to-right
<< , >>
Left-to-right
-e , -r ,
없다
< , <= , > , >= , lt , le , gt , ge
Left-to-right
== , != , <=> , eq , ne , cmp
Left-to-right
&
Left-to-right
| , ^
Left-to-right
&&
Left-to-right
||
Left-to-right
..
Left-to-right
? and :
Right-to-left
= , += , -= , *= ,
Right-to-left
and so on
 
,
Left-to-right
not
Left-to-right
and
Left-to-right
or , xor
Left-to-right
 
논리 또는 ∶$a | $b 또는 $a or $b 논리와 ∶$a & & $b 또는 $a and $b 논리는 ∶! $a 또는 not $a 논리적 오류 또는 ∶$a xor $b
 
 
 

좋은 웹페이지 즐겨찾기