[疑难] 请问各位一个简单的问题
seagate
2007-03-22
刚学d语言,照着d的文档考了一个例子下来运行
import std.stdio; import std.file; void main(char[][] args) { auto dirs = std.file.listdir(args[1]); foreach (d; dirs) writefln(d); } 这个能正常运行,列出所有文件,但是下面这个就死掉了, import std.stdio; import std.file; void main(char[][] args) { auto d_source_files = std.file.listdir(args[1], "*.d"); foreach (d; d_source_files) writefln(d); } 程序运行没有任何反应,都不知道该怎么调试才好,请看看这个问题。 |
|
oldrev
2007-03-22
既然你用到了命令行参数你就应该提供啊,比如:
program.exe ~/ 程序没有参数自然不存在 args[1..length]。 |
|
ideage
2007-03-22
可以先判断参数,没有就返回,或者打印没有提供路径参数.
if(arg.length==0){ writefln("error!"); return; } |
|
seagate
2007-03-22
哦,忘记说了,我是提供了参数的。因为第一个例子能正常运行。
|