Adrian Perez

lua-users home
wiki

Lua 使用者和程式設計師。崇尚「小巧而美」的哲學。

目前的工作

早期作品

        i = 1;
        for line in io.readlines() do
           print(i .. ": ", line);
           i = i+1;
        end

在 C 语言中可以一行完成 :o) 例如,
for (int i=1, b[100];;i++) printf("%d: %s\n",i,gets((char*)b));
或者在 Lua 中一行:--NDT
while 1 do i=(i or 0)+1 print(""..i..": "..io.read()) end
  or
for i,ln in function(s,i) return i+1,""..i..": "..io.read() end,nil,1 do print(ln) end

对,没错 ;),但如果你对行长度超过缓冲区大小的文件运行程序,C 代码会当机,而且你需要宣告 main() 函数、包含 stdio.h。我想我是太常担心代码的正确性,而那个脚本毕竟不是个好例子:P -- Adrian

嗯...我觉得上面给的这些范例都不是一行代码。这样的话,你可以将整个文件压成一行...别误会,我还是觉得它很棒,而且很喜欢 Lua:o)

当然,如果简洁是你的目标,Perl 每次都赢:-- ET
while(<>) {print(++$i.": ".$_)}

天啊!我受不了 Perl,我看到用 Perl 写的代码都像是难以理解的混和式代码。但我承认你的范例无懈可击 ;) -- AdrianPerez

抱歉插嘴,不过在这个问题上 Awk 几乎天下无敌 (读取来自标准输入)
awk '{print NR, $0}' -
-- JulioFernandez

構思

構思、構思:我有各種構思,但它們無法實現,或者沒有實作,又或者……由於我想開發 Lixoo,所以我沒有多餘的時間來做這些。

我已嘗試過這個:[moonmake](文件:[moonmake.txt])-- xlq

最近的變更 · 偏好設定
編輯 · 歷程
上次編輯時間為 2016 年 1 月 25 日上午 9:31 (GMT) (差異)