JSPerf上的某个人为了检查ISO日历的闰年而放弃了一个非常快的实现(链接:奇数位操作):
function isLeapYear(year) {
return !(year & 3 || year & 15 && !(year % 25));
}
Run Code Online (Sandbox Code Playgroud)
使用Node.js,我快速检查了它与我知道的另外两个单线程实现.
function isLeapClassic(y) { return (y % 4 == 0) && !(y % 100 == 0) || (y % 400 == 0); }
function isLeapXOR(y) { return (y % 4 == 0) ^ (y % 100 == 0) ^ (y % 400 == 0); }
function isLeapBitwise(y) { return !(y & 3 || y & 15 && !(y % 25)); } …Run Code Online (Sandbox Code Playgroud) 这是一个简单的程序,它从stdin读取行并将它们输出到stdout.
module test;
import std.stdio;
void main(string[] args)
{
foreach (int i, string line; lines(stdin)) {
writeln(line ~ " (test)");
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用Windows DMD编译器v2.052.
如果我做 : type file.txt | test.exe
程序将"test"一词附加到file.txt的每一行,并将它们输出到控制台.
但是我最后得到一个错误:
std.stdio.StdioException@std\stdio.d(2138): Bad file descriptor
也许我错过了什么?它让我疯狂!:)