There is nothing unclear about if (@ARGV == 0) which quite intuitively translates to "if the number of arguments is zero." Your alternatives are all fine, too, but there is no reason other than personal preference to prefer one over the other.
When's the last time you used duct tape on a duct? --Larry Wall