とりあえず、今回のポイントは文字読み込みと出力に何を使うか、という話。
read、putcharでやろうと思ったけど、readが使えるならwriteもつかえるんじゃね?
ってことでやってみた。
stdoutのファイルポインタ値はいくつかな?って調べてた中で0(stdin)に出力すると
何も出なかった。ヘッダ調べてどうやらstdoutは1らしいってことで1に出力すると出た。
これ、使えるんじゃね?と思ってこうなった。
writeの2番目以降の引数はreadと同じなので省略可。
ダブルクォーテーションが来るたびフラグを反転。
フラグによって空白出力/非出力を切り替えです。
writeの2番目以降の引数はreadと同じなので省略可。
ダブルクォーテーションが来るたびフラグを反転。
フラグによって空白出力/非出力を切り替えです。
c;
main(a){
for(;read(0,&c,1);a^=c==34)
write(c>32*a);
}
ほかのトップの人はwriteの中が違うくらいだと思う。3パターンくらい考えてこれにしときました。
0 件のコメント:
コメントを投稿