小编Rat*_*dey的帖子

为什么在子例程中调用print会在字符串中附加1?

我创建了以下子例程性别来随机打印字符串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

printing perl return-value subroutine

1
推荐指数
2
解决办法
764
查看次数

如何使测试条件在TCL中工作

% 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)

string tcl

1
推荐指数
2
解决办法
1188
查看次数

标签 统计

perl ×1

printing ×1

return-value ×1

string ×1

subroutine ×1

tcl ×1