明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 886|回复: 4

[提问] 为什么我设置的局部变量没有用?(defun c:oo (/ ss s1 s2)

[复制链接]
发表于 2018-2-17 15:25 | 显示全部楼层 |阅读模式
本帖最后由 尒樣僮 于 2018-2-17 15:29 编辑

为什么我设置的局部变量没有用 变量里一直都有值 每次都只有在程序最后每个变量赋NIL
哪位给告诉我下,怎么设置全局和局部变量,谢谢……

  1. (defun c:oo (/ ss s1 s2)
  2.   (setq osmode_bak (getvar "osmode"))
  3.   (setvar "osmode" 0)
  4.   (princ "\n请选取要偏移的直线:")
  5.   (setq ss (ssget ))
  6.   (if (not ss)
  7.     (progn (princ "\n提示:未选中直线,程序退出!\n")
  8.       (setvar "osmode" osmode_bak)
  9.       (exit)
  10.     )
  11.   )
  12.   (if (= 1 (sslength ss))
  13.     (progn
  14.       (setq s1 nil)
  15.       (setq s2 nil)
  16.       (setq s3 nil)
  17.       (setq s1 (ssname ss 0))
  18.       (setq s2 (getpoint ))
  19.       (setvar "osmode" osmode_bak)
  20.       (command "OFFSET" "100" s1 s2 "")
  21.       (command "OFFSET" "750" s1 s2 "")
  22.       (command "OFFSET" "800" s1 s2 "")
  23.       (command "OFFSET" "1500" s1 s2 "")
  24.       (command "OFFSET" "2200" s1 s2 "")
  25.     )
  26.   )
  27.   (setvar "osmode" osmode_bak)
  28. )


发表于 2018-2-17 22:12 | 显示全部楼层
变量? 那个变量?
发表于 2018-2-19 13:04 | 显示全部楼层
ss s1 s2是局部变量,s3是全局变量
发表于 2018-5-16 16:08 | 显示全部楼层
xinxirong 发表于 2018-2-19 13:04
ss s1 s2是局部变量,s3是全局变量

局部变量和全局变量,如何区别设置,我的小程序,把里面的所有变量设为局部变量,程序反而不起作用了,把这些局部变量都去掉不定义它,程序可以正常使用,这是为什么呢?
发表于 2019-3-11 17:44 | 显示全部楼层
zzl9105 发表于 2018-5-16 16:08
局部变量和全局变量,如何区别设置,我的小程序,把里面的所有变量设为局部变量,程序反而不起作用了,把 ...

必须注明写局部变量吗,默认空白不写行不行呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-26 17:39 , Processed in 1.499129 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表