Here is what I've got so far: 1. "long long" in C is always 64bit, so in D it's "long"; 2. C's char* string should be converted to!string when used in "writeln"; 3. String literals in D -IS- zero terminated; And now it's working fine. Thanks everybody :)