明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2631|回复: 5

[求助]关于全局变量的问题

[复制链接]
发表于 2009-6-10 15:45:00 | 显示全部楼层 |阅读模式

程序的开头用getint输入一个数字1,然后赋值这个数字到一个全局变量n,然后执行完我的程序之后n这个变量值变成了任意数字(假设n=5了),当我再次运行这个程序的时候,提示我输入数字,然而n的默认值成为了5,我应该怎么做呢?

高手能给我个思路吗?

发表于 2009-6-10 15:50:00 | 显示全部楼层

把n定义为局部变量,且初始值为1,即可!

 楼主| 发表于 2009-6-10 16:24:00 | 显示全部楼层

程序的开头用getint输入一个数字1,然后赋值这个数字到一个全局变量n,然后执行完我的程序之后n这个变量值变成了任意数字(假设n=5了),当我再次运行这个程序的时候,提示我输入数字,然而n的默认值成为了5,我应该怎么做呢?
高手能给我个思路吗?

我的意思表达错了,我就是要我n的值是5

假如程序是这样的:

(setq n (getint "输入起始值:<1>"))

(if (null n) (setq n w))

(while (...)

......

(setq n (1+ n))

(setq w n)

)

(princ)

然后我再次启动程序

屏幕上显示的变成了“请输入起始值:<5>”

这个效果怎么实现呢?

请高手们继续指导

谢谢!

发表于 2009-6-10 17:22:00 | 显示全部楼层

(if (= #AY_DEFINE_N nil) (setq #AY_DEFINE_N 1))

(setq n (getint (strcat "输入起始值:<" (itoa #AY_DEFINE_N) ">")))

(if (null n) (setq n #AY_DEFINE_N) (setq #AY_DEFINE_N n))

(while (...)

......

(setq n (1+ n))

(setq w n)

)

(princ)

 楼主| 发表于 2009-6-10 17:25:00 | 显示全部楼层

谢谢

学了一招

发表于 2012-6-7 12:42:08 | 显示全部楼层
不错对我有启发
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-9-25 12:24 , Processed in 0.176771 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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