ページ 11

数字を入力をしないとprintfの文が表示されない

Posted: 2017年1月18日(水) 11:17
by maxwell
C言語初心者です。
OpenCV3.0を用いて画像処理を行っています。
最初に、scanfを用いて数値を入力し行う画像処理を指定しているのですが、いつからか数値を入力しないとprintfの文が表示されないようになりました。
順番としては、printfで行う処理の番号を表示し、scanfで入力を受け付けています。
どなたか原因と改善策をご教授ください。

Re: 数字を入力をしないとprintfの文が表示されない

Posted: 2017年1月18日(水) 12:23
by box
maxwell さんが書きました: 順番としては、printfで行う処理の番号を表示し、scanfで入力を受け付けています。
どなたか原因と改善策をご教授ください。
当該のコードを見せてください。そこで使っている変数の定義部分を含めて。

Re: 数字を入力をしないとprintfの文が表示されない

Posted: 2017年1月18日(水) 14:27
by みけCAT
よくあるケースとしては、
  • 出力がバッファに入ったままになっている
    → fflush()を使うと良い
  • scanf()に渡している書式(の最後)に余計な空白や改行が入っているため、次のデータを待っている
    → 該当の文字を消すと良い
というのが考えられます。

Re: 数字を入力をしないとprintfの文が表示されない

Posted: 2017年1月23日(月) 10:54
by maxwell
みけCAT さんが書きました:よくあるケースとしては、
  • 出力がバッファに入ったままになっている
    → fflush()を使うと良い
  • scanf()に渡している書式(の最後)に余計な空白や改行が入っているため、次のデータを待っている
    → 該当の文字を消すと良い
というのが考えられます。
みけCATさんの言うとおり、改行をしているため消したところ治りました。

boxさん、みけCATさんありがとうございました。