Board logo

标题: 谁能解释下这个if 3 grt 2 和 if (3 grt 2)的不同之处。 [打印本页]

作者: htysm     时间: 2007-2-22 02:12    标题: 谁能解释下这个if 3 grt 2 和 if (3 grt 2)的不同之处。

@echo off
if 3 gtr 2 (echo ok) else echo no
pause

运行后执行的结果是“OK”。
@echo off
if (3 gtr 2) (echo ok) else echo no
pause

运行后执行的结果是:”NO“。

我都晕,谁能解释下。
作者: lxmxn     时间: 2007-2-24 10:32

  Re htysm:

  对于“if (3 gtr 2) (echo ok) else echo no”这句,if 语句好象还不支持 if 命令后面加上一对括号[()]将程序体括起来的用法,导致这个命令出现“NO”的运行结果,可以和 if 命令的分析机智有关,你可以试试这个命令:" if ) gtr ( (echo  OK) else echo NO ",它的结果是“OK”,可以猜想 if 命令是比较 gtr 前后两个字符的ASCII码[ ) 的ASCII码是41,( 的ASCII码是40,41>40]来执行后面的命令的。
  

作者: minmin888     时间: 2007-4-22 10:51
多谢lxmxn