我创建了以下子例程性别来随机打印字符串MALE或FEMALE.调用子例程时,print命令在字符串末尾加上"1"后缀.请参阅下面的示例代码和输出:
sub gender {
if ( (int rand(100)) >50) {
print "MALE ";
}
else {
print "FEMALE";
}
}
foreach (1..5) {
print &gender, "\n";
}
Run Code Online (Sandbox Code Playgroud)
注意"MALE"或"FEMALE"后缀为"1"
OUTPUT:
FEMALE1
FEMALE1
MALE 1
MALE 1
FEMALE1
MALE 1
Run Code Online (Sandbox Code Playgroud)
我正在使用perl v5.8.9 v5.8.9内置的MSWin32-x86多线程
Binary build 826 [290470] provided by ActiveState http://www.ActiveState.com Built May 24 2009 09:21:05
% set HI 1
1
% if { [ info exists HI] && { $HI == 1 } } { puts "Hello World "}
can't use non-numeric string as operand of "&&"
%
Run Code Online (Sandbox Code Playgroud)
这两种情况都可以单独测试.如何使测试的&&在TCL中起作用?
仅此一点起作用
% if { $HI == 1 } { puts "Hello World "}
Hello World
Run Code Online (Sandbox Code Playgroud)
这也是独一无二的.
% if { [ info exists HI] } { puts "Hello World "}
Hello World
Run Code Online (Sandbox Code Playgroud)