【C言語】「gets」関数を使って「文字列」を入力させる方法
【C言語】
「gets」関数を使って「文字列」を入力させる方法
「C言語」の
「gets」関数は、
「キーボード」などの「標準入力」から
データを受け取って、
「変数」「配列」などに保存する関数。
「gets_s」関数は、
「マイクロソフト社」が用意した
「マイクロソフト社製コンパイラ」用の「セキュア関数」。
使用方法はシンプルで、
覚えてしまえば簡単に使用できる書式。
文字数の多い文字列は、エラーになることがあります。
詳しくは、
下記をご参照下さい。
「gets」関数とは
「gets」関数は、
「キーボード」などの「標準入力」から、
「文字列」を取得できる関数。
入力した文字列が長すぎるとエラーを起こすことがあり、
「gets」関数の「セキュリティ強化版」でもある
セキュア関数「gets_s」関数が用意されている。
「Visual Studio」では、
「gets」関数を利用すると、
「gets_s」関数の使用を促す警告が出る。
Back
標準「C言語」で開発をしたいときの設定方法
「gets_s」関数などの「セキュア関数」は、
「マイクロソフト製コンパイラ」でしか利用できないので、
標準の「C言語」で
開発プログラミングコードを記述したい場合は、
下記の「プリプロセッサ命令」を
ソースコードの先頭に記述する。
記述することで、
警告が表示されなくなる。
#pragma warning(disable: 4996)
「マイクロソフト製コンパイラ」でのみ使用できる
「gets_s」関数などの「セキュア関数」は、
C言語関数名_s
という表記になっていて、
「C言語」の関数名に、「_s」が加えられている名前が、
マイクロソフト製のセキュア関数となっている。
Back
「gets」関数の書式
「gets」関数は、
「キーボード」などの「標準入力」から
データを受け取り、
「変数」「配列」などにデータを保存する関数です。
「gets_s」関数は、
マイクロソフト社が用意した
「gets」関数の「セキュリティ強化版」の「セキュア関数」。
「マイクロソフト社」が用意した「セキュア関数」は、
「マイクロソフト社製コンパイラ」でのみ使用可能です。
標準「C言語」の開発の場合は、
「gets」関数を使用します。
gets(文字を記録するchar型ポインタ);
gets_s(文字を記録するchar型ポインタ, 文字数);
gets(&変数名);
gets(配列名);
gets(&配列名[1]);
gets_s(&変数名, 8);
gets_s(配列名, 8);
gets_s(&配列名[1], 8);
Back