中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-07 19:02
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]if not defined str (pause & goto :eof)什么意思 查看 1,149 回复 3
楼 主 [求助]if not defined str (pause & goto :eof)什么意思 发表于 2008-03-12 19:54 ·  中国 黑龙江 大庆 大庆中基石油通信建设有限公司
高级用户
★★
积分 547
发帖 261
注册 2006-04-15 16:50
20年会员
UID 53887
状态 离线
@echo off
set /p str=请输入任意长度的字符串:
echo 你输入了字符串:"%str%"
if not defined str (pause & goto :eof)
set num=0
:len
set /a num+=1
set str=%str:~0,-1%
if defined str goto len
echo 字符串长度为:%num%
pause
这是我看到伤脑筋的教材,其中
if not defined str (pause & goto :eof)

if defined str goto len
什么意思,哪位朋友能给我解释一下
2 发表于 2008-03-12 21:05 ·  中国 浙江 嘉兴 海宁市 电信
中级用户
★★
积分 360
发帖 216
注册 2007-05-29 17:41
19年会员
UID 89677
性别 男
状态 离线
if not defined str (pause & goto :eof)

这是一个判断语句,意思是

STR是否被定义成变量,如果被定义了变量,则结果为真!
3 发表于 2008-03-12 21:57 ·  中国 福建 福州 联通
高级用户
★★
积分 581
发帖 277
注册 2006-12-23 05:10
19年会员
UID 74328
性别 男
状态 离线
if not defined str (pause & goto :eof)

判断变量str是否已经被定义,如果不存在变量str,则执行暂停然后退出批处理的命令
4 发表于 2008-03-13 12:24 ·  中国 黑龙江 大庆 大庆中基石油通信建设有限公司
高级用户
★★
积分 547
发帖 261
注册 2006-04-15 16:50
20年会员
UID 53887
状态 离线
谢谢,明白了
论坛跳转: