#include <stdio.h>
int say_hello( void )
{
printf("Hello world!!\n");
return 0;
}
int main( int argc, char* argv[] )
{
int flag=0;
printf("flag=0\n");
flag && say_hello(); // say_hello() won't be invoked
flag || say_hello(); // say_hello() will be invoked
printf("flag=1\n");
flag=1;
flag && say_hello(); // say_hello() will be invoked
flag || say_hello(); // say_hello() won't be invoked
return 0;
}
不過坦白說,這樣寫的結果是導致可讀性變差,只有自己維護這份 code 時,那是可以用,很多人維護一份 code 時,最好還是避免,或者,加上註解比較好。
我想 c# / java 應該也可以這樣作。
p.s. 如果不是呼叫函數的話,記得要使用 ( ),例如:
i && (j=100);
這就等同於:
if(i) j=100;
沒有留言:
張貼留言