Files
perl-examples/Writerside/topics/Variable.md
2024-06-21 14:57:07 +09:00

79 lines
1.6 KiB
Markdown

# 변수
`use strict;`를 선언하면 엄격한 문법을 적용합니다. 이 경우, 모든 변수는 사용하기 전에 선언되어야 합니다.
```perl
#!/usr/bin/perl
$var;
```
```perl
#!/usr/bin/perl
use strict;
my $var;
```
## 변수의 범위
```perl
#!/usr/bin/perl
use warnings;
use strict;
our $var = 'Charlie';
print "$var\n"; # Charlie
{
my $var = 'Steve';
print "$var\n"; # Steve
}
print "$var\n"; # Charlie
```
`my` 는 지역 변수를 선언할 때 사용되는 키워드입니다. 선언된 블록 범위 내에서만 유효합니다.
`our`는 전역 변수의 선언에 사용되는 키워드입니다.
## @ARGV
프로그램 실행시 명령행으로부터 전달 받은 매개변수는 **@ARGV** 배열에 저장됩니다. **$#ARGV + 1**은 전달받은 매개 변수의 갯수입니다.
```perl
#!/usr/bin/perl
use strict;
my $size = $#ARGV+1;
print "count = $size\n";
for (@ARGV){
print "$_\n";
}
```
## 특수 변수
| | | |
| --- | --- | --- |
| \$_ | | |
| \$. | | |
| \$/ | 입력 레코드 구분자 | |
| \$, | 출력 필드 구분자 | |
| \$\ | 출력 레코드 구분자 | |
| \$" | | |
| \$; | | |
| \$^L | | |
| \$: | | |
| \$^A | | |
| \$# | | |
| \$? | 시스템 콜로부터 돌려받은 상태 코드 | |
| \$! | 오류 넘버 또는 오류 메시지 | |
| \$@ | 구문 오류 메시지 | |
| \$\$ | Perl 프로세스의 PID | |
| \$< | UID | |
| \$> | | |
| \$( | GID | |
| \$) | | |
| \$0 | | |
| | | |
| | | |