(************************************************************ read.ml Created : Thu Dec 19 02:40:58 2002 Last modified: Thu Dec 19 03:06:05 2002 Compile: ocamlopt.opt unix.cmxa read.ml -o read # FTP Directory: sources/ocaml # ************************************************************) (** Reference: http://www002.upp.so-net.ne.jp/mamewo/sources/c/noecho.c # @author Takashi Masuyama 使い方。文字を数文字入れて \C-d を押してみよう *) let terminal_io = Unix.tcgetattr Unix.stdin in begin terminal_io.Unix.c_echo <- false; Unix.tcsetattr Unix.stdin Unix.TCSANOW terminal_io; print_string "input: something: "; flush stdout; let buf = String.create 1 in let result = ref "" in while (Unix.read Unix.stdin buf 0 1) != 0 do result := (!result)^(String.uppercase buf) done; print_newline (); print_endline !result end