我正在嘗試編寫一個Perl程序。該程序很簡單。如果變量$ a和$ b等於1,那麼就會打印一些東西。但是catch程序必須檢查對於$ b的值,只有在$ var == 1的情況下才行。否則,如果$ $ var == 0,則只需檢查$ a值。多個條件檢查Perl
我曾嘗試使用嵌套if.But我得到的錯誤寫。(我試圖做同樣的方式如何可以在C通過使用宏來完成。)
my $var = 1 ;
my $a = 1 ;
my $b = 1 ;
if(($a == 1)
{
if($var == 1)
{
&& ($b == 1)
}
)
print " hey ,it worked " ;
}
案例:1)因此,$ var == 1,它必須在打印之前檢查$ b的值。
my $var = 1 ;
my $a = 1 ;
my $b = 0 ;
if(($a == 1)
{
if($var == 1)
{
&& ($b == 1)
}
)
print " hey ,it worked " ;
}
案例:2)$ b == 0,沒有打印。
my $var = 0 ;
my $a = 1 ;
my $b = 1 ;
if(($a == 1)
{
if($var == 1)
{
&& ($b == 1)
}
)
print " hey ,it worked " ;
}
案例:3)$ var == 0,它不應該檢查$ b的值並打印出該行。 我應該得到上面提到的結果,但我沒有得到如何去做。親切的幫助。
感謝replies.But你不明白我的疑問。我真正想要做的是,回來的路上我已經用C語言編寫一個程序,我將定義在.h文件中類似的宏,
#define SWITCH 1
在.c文件中,我將檢查條件。
if((a == 1)
#if SWITCH
&& (b == 1)
)
{
print " hey ,it worked " ;
}
所以,在這裏$ B將被檢查,只有在宏觀值開關在.H 1文件。如果該值變爲0,
#define SWITCH 0
然後打印語句只取決於a和b值的值不會被檢查。我想在Perl中做同樣的事情。
感謝reply.I已編輯的問題。請指導我 –
Perl沒有宏。如果你需要這樣的優化,你不應該首先使用Perl。 – ikegami
是的,我知道,但是實現這個perl的最接近的方式是什麼?使用常量SWITCH => 1或類似的東西... –