• ベストアンサー

C言語にて表示されている文字を変更する方法

PSPでソフト開発を始めようと思っています。 Cの初歩的質問で申し訳ないのですが、既に画面上に表示されている、例えば数字などをその場で変更するにはどうすればいいのでしょうか? 例)「こんにちは」と画面上に表示されていて、何かをするとその「こんにちは」が「おはよう」に変わる(改行せずに) よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#58274
noname#58274
回答No.1

こんにちはと表示しているのが、画面の3行目だとして、 その3行目におはよう、を上書きすることになります。 環境等によって異なるのですが、表示位置を指定する関数があると思うので、 SetDisplayLine(3); Print("おはよう"); 等とすればいいと思います。 ※関数名は適当です。 環境によって異なります。

superjbs
質問者

お礼

ご回答ありがとう御座います。 質問内容が抽象的すぎました。 本当は4桁くらいの数字が並んでいて、それを左右キーで桁変更し、上下キーで数字が変わるものを作りたいのですが・・・。 もしお分かりならばよろしくお願いします。 (まだまだC初心者ですOTZ

その他の回答 (2)

回答No.3

PSPってことは Windowsのコンソールのように一度書いたらそのまま残るわけではなく、毎フレーム画面をクリアする必要があるので毎回「こんにちわ」と文字を表示し続けますよね?  そこを「おはよう」と変えるだけです。 if(nanika != true)   pspDebugScreenPrintf("aaa"); else   pspDebugScreenPrintf("bbb");

superjbs
質問者

お礼

ご回答ありがとう御座います。 質問内容が抽象的すぎました。 本当は4桁くらいの数字が並んでいて、それを左右キーで桁変更し、上下キーで数字が変わるものを作りたいのですが・・・。 もしお分かりならばよろしくお願いします。 (まだまだC初心者ですOTZ

  • akoyagai
  • ベストアンサー率42% (3/7)
回答No.2

私はPSPを触ったことがないのですが、出力は WindowsやLinuxで言う、コマンドプロンプトのようなものでしょうか? そうであれば、環境がPSPなので可能性はかなり低いですが、 エスケープシーケンスに対応していればできます。 Windows 9xやLinuxなどは対応していますが、 Windows NT系は未対応です。 例えば、カーソルを(1,3)に動かしたい場合は、 printf("\x1b[1;3H"); printf("おはよう"); とすればよいです。

superjbs
質問者

お礼

ご回答ありがとう御座います。 質問内容が抽象的すぎました。 本当は4桁くらいの数字が並んでいて、それを左右キーで桁変更し、上下キーで数字が変わるものを作りたいのですが・・・。 もしお分かりならばよろしくお願いします。 (まだまだC初心者ですOTZ

関連するQ&A