Using getchar
Rory McGuire
rjmcguire at gmail.com
Fri Sep 10 05:13:23 PDT 2010
Its not skipping its looping on "a\r\n" if you're on windows.
Linux it does the same but only "a\n".
Not sure how you'd make it so that you don't have to wait for the
return press. Probably has something to do with console settings,
which are probably platform dependent.
-Rory
Andrej Mitrovic wrote:
> I have some D1 code that I'm transfering to D2, and it's using
getchar. I
> think I need to flush the buffer or something because the loop tends
to
> skip:
>
> import std.c.stdio;
> import std.stdio;
>
> void main()
> {
> char k;
>
> for(int i = 0; i < 10; i++)
> {
> writef("Press key #%d:\t\n", i);
> k = cast(char)getchar();
> }
> }
>
> E.g.:
> Press key #0:
> a
> Press key #1:
> Press key #2:
> b
> Press key #3:
> Press key #4:
> c
> Press key #5:
> Press key #6:
>
> I guess I could use scanf() instead.. or maybe something more D-ish
> perhaps? :)
>
> Someone on the NGs started creating some user-friendly input
functions,
> something like getInput!char(variable), or similar. But I can't find
the
> topic, anyone know the link perhaps? It was fairly recent that
someone
> posted it.
More information about the Digitalmars-d-learn
mailing list