Printing a C "string" with write(f)ln
Gary Willoughby via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Tue Feb 9 08:52:09 PST 2016
On Tuesday, 9 February 2016 at 12:50:27 UTC, Jakob Ovrum wrote:
> writefln et al sensibly does *not* assume that a pointer to
> char is a C string, for memory safety purposes.
>
> Print the result of std.string.fromStringz[1] instead:
>
> writeln(fromStringz(pString));
> writefln("%s", fromStringz(pString));
>
> [1] http://dlang.org/phobos/std_string#fromStringz
Or use `to` like this:
import std.conv;
writefln("%s", pString.to!(string));
More information about the Digitalmars-d-learn
mailing list