Variable
펄에는 스칼라, 배열, 해시의 세 가지 종류의 변수가 있다.
각각을 고유의 sigil ( 앞에 붙이는 특수문자 ) 로 구분한다.
각각 $, @, % 이다.
변수의 선언은 my 구문으로 선언하며 블럭 단위로 scope 가 위임된다.
Weak Type
스칼라에 대입된 값이 "숫자" 인지 "문자열" 인지 확인하는 것은 불가능하다.
즉 스칼라를 숫자로 취급할지 문자열로 취급할지 정해서 각각 경우에 맞게 정확히 연산자를 사용해야 한다.
# 숫자로 취급하여 비교하는 연산자: <, >, <=, >=, ==, !=, <=>, +, *
# 문자열로 취급하여 비교하는 연산자: lt, gt, le, ge, eq, ne, cmp , . , x
# 고전적인 실수 사례
print "yes" == "no"; # "1" 즉 참. 경고가 2개 발생. 숫자로 사용되었기에 두 개 모두 0이 된다
my $str1 = "4G";
my $str2 = "4H";
print $str1 + $str2 ; # "8" 경고가 2개 발생한다.
print $str1 eq $str2 ; # "" (빈 문자열. 즉 false)
print $str1 == $str2 ; # "1" 경고가 2개 발생
|
'Script > Perl' 카테고리의 다른 글
06. Array Function (0) | 2020.01.21 |
---|---|
05. Scalar Data (0) | 2020.01.21 |
03. Hello World (0) | 2020.01.21 |
02. Elipse 에 Perl IDE 설치 (0) | 2020.01.21 |
01. Environment Setup (0) | 2020.01.21 |