明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: peraperson

[提问] 用字符串为子程序变量调用的问题

[复制链接]
 楼主| 发表于 2013-10-25 10:25:50 | 显示全部楼层
llsheng_73 发表于 2013-10-25 09:58
额,看样子你对参数在概念上还有点混乱。。。
你把需要给子程序的参数先确定好,再把命令中是参数的 ...

恩 非字符串的话还是好办的 就是字符串不好搞 不知道能不能把字符串在子程序里直接作为变量呢?
发表于 2013-10-25 10:52:37 | 显示全部楼层
peraperson 发表于 2013-10-25 10:25
恩 非字符串的话还是好办的 就是字符串不好搞 不知道能不能把字符串在子程序里直接作为变量呢?

不是这个问题。。。。
如果你所用的命令需要字符型参数,那么你给参数的时候就给个字符串就行了,而不是要你在程序中在它们作为参数的时候用""把它引起来以为能说明它是一个字符串?其实不是的,那样它就成了一个字符型常量而不是变量,也就不能接收你所给的参数了。。比如

(defun mycil(p r)
(command "_CIRCLE" p "5")
)  ;;这样虽然有问题,就是参数r不会起作用,但它是能运行的,只不过你所给它的半径不起作用

(defun mycil(p r)
(command "_CIRCLE" p "r")
) ;;这样看着好象可以,但实际上是不行的,因为"r" 它不能接收参数 r的值也自己没有值,所以是不行的

(defun mycil(p r)
(command "_CIRCLE" p r)
);;这样就没问题,在调用的时候是可以 (mycil (getpoint) "5")和(mycil (getpoint) 5)都是可以的,至于为什么同一个参数为什么表示数值的字符型和数值型都能运行,这只能说明它并没有对其严格检查,只要能被理解为数值就行了,但对于明确规定了需要实际字符串的地方,那是含糊不了的
 楼主| 发表于 2013-10-25 10:53:14 | 显示全部楼层
xyp1964 发表于 2013-10-25 10:00

有用半角括号 请问你那边测试可以吗 还是我这边的问题?我试了好几次了都不行。。。 汗

点评

缺少悟性,放弃吧!  发表于 2013-10-25 12:27
 楼主| 发表于 2013-10-25 10:57:44 | 显示全部楼层
llsheng_73 发表于 2013-10-25 10:52
不是这个问题。。。。
如果你所用的命令需要字符型参数,那么你给参数的时候就给个字符串就行了,而不是 ...

谢谢你 很详细 学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-26 05:33 , Processed in 0.141437 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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