使用D语言中的readf读取元素数组

4

在D语言中,是否可以使用readf而不需要循环来读取给定长度的数组元素?

如果长度未知,是否也能实现呢?

我尝试使用与格式化写入相同的语法,即%(%d %),但它并不起作用。

编辑:更一般地说,readf是否能够使用与writef相同的格式?


2
也在编码吗?=) - Sebastian Graf
耶!:) 我抓住机会学习了D,嘿嘿 - AkiRoss
它表现得很好...比C++好得多,主要是因为std.algorithm。但是我无法为C的第二大集实现一个BigInt实现。 - Sebastian Graf
3
抱歉打扰一下,顺便说一句,我也不知道如何做那个。我大多数时候使用readln().strip().split().map!(to!size_t)() - Sebastian Graf
在发现数组页面(http://dlang.org/arrays.html)后,我还发现了一种方便的复制语法,使用`[]`来表示左右值。 - AkiRoss
显示剩余3条评论
1个回答

3

目前存在一个错误(Bugzilla 10060),导致此功能无法正常工作,但它可以用于按行读取。

foreach (line; stdin.byLine())
{
    int[] result;
    formattedRead(line, "%(%d,%)", &result);
    writeln(result);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接