特定のキーの受付

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
かめねこ
記事: 2
登録日時: 13年前
住所: 神奈川県
連絡を取る:

特定のキーの受付

#1

投稿記事 by かめねこ » 13年前

現在、コンソールアプリケーションを制作してるのですが、scanfの様に一定のキーが入力後にエンターを押さず、そのキーのみで条件判断させたいのですが、どうしたら良いですか?

例)
文書:処理を開始するにはエンターを押して下さい。
操作:エンターを入力し、処理を実行

というものが作りたいです。

ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: 特定のキーの受付

#2

投稿記事 by ISLe » 13年前

ウィンドウズのコマンドプロンプトで動作するものであれば、コンソールライブラリ(conio)の_getchが使えます。

ウィンドウズに限定しないのであればcursesライブラリを使うと良いです。

nil
記事: 428
登録日時: 14年前

Re: 特定のキーの受付

#3

投稿記事 by nil » 13年前

一文字を入力する場合、getcharで大体が事足りるのですが、
エンターを介さない方法となると、
conio.hに定義されているgetch関数を使えばいいかと思います。

コード:

#include <stdio.h>
#include <conio.h>
int main(){
	char in = getch();
	putchar( in );
}
但し、これは処理系依存のようで、
MS-DOS以外ではつかえないようです。

かめねこ
記事: 2
登録日時: 13年前
住所: 神奈川県
連絡を取る:

Re: 特定のキーの受付

#4

投稿記事 by かめねこ » 13年前

お二方、ありがとうございます。
getch関数にて望みの動作が出来る様なので、そちらを使用します。
助言ありがとうございました!

閉鎖

“C言語何でも質問掲示板” へ戻る