首先我们来看一块代码
if (print("4\n") && print("4\n") && print("4\n") && print("4\n")){
;
}
这段代码输出的是
1
111
print并不是函数,而是一个语法结构,print expr
参数并不需要括号(加了解析时也会被忽略),print 仅支持一个参数,并总是返回 1
// 实际是这样解析的
if (print ("4\n" && print ("3\n" && print ("2\n" && print "1\n")))) {
;
}
// 如果想输出 4 3 2 1
if ((print "4\n") && (print "3\n") && (print "2\n") && (print "1\n")) {
;
}
// 输出
4
3
2
1