[C / C ++構文] -gets機能と機能のfgets

機能を取得

機能説明を取得します

関数のプロトタイプがあり得ます

char* gets(char* buffer);

読み出し機能は**「\ n」は**端、及び最終的なリード「\ n」は(文字列フラグの終わり)「\ 0」に文字列を取得するまで
最初の配列のアドレスから、関数の戻りを取得しますこれは、文字の最初のアドレスアレイに普及し始めた
の読み取りは、NULLを返します。失敗した場合

機能の欠陥を取得

関数は、オーバーフローがそうでなければ、データ・スタックを変更する可能性を防止するために、機能があまりにも多くのオーバーフローを読み取るために文字の配列につながる可能性があり、それはプログラム中の配列サイズことに留意すべきで取得上限を決定しません取得!

fgets関数

fgets関数の説明

関数のプロトタイプがあり得ます

char* fgets(char* buffer, int bufsize, FILE *stream)

最後に、それは読むためにどのファイルを示すために、第三のパラメータが必要です。データは、キーボードから読み取られた場合、次のコードに示すように、それは、パラメータ標準入力として使用することができます。

#include <stdio.h>
int main(void)
{
	char a[105];
	fgets(a, 11, stdin);
	puts(a);
	return 0;
}

入力:aaaaaaaaaaa
出力:AAAAAAAAAA

まず、関数は改行関数fgetsのを読んでいない、異なって取得し、最後の文字の置き換えを読みます「\ 0」、最後の文字がデータを格納することができないことを意味します、 BUFSIZEはあなたがn文字を入力したいとき、例えば、入力したい文字列の数は、BUFSIZEが理由コード出力上記10 + 1、nに設定されるべきです。
:ストップ読みはときfgets関数は、「\ n」をまたはN-1が読み込まれた文字に遭遇する
概要を:あなただけの二番目のパラメータを設定したn文字の文字列を入力したいときN + 1缶に、関数が読みますfgetsの最後に「\ n」は「\ 0」に置き換えられています

公開された20元の記事 ウォンの賞賛2 ビュー948

おすすめ

転載: blog.csdn.net/zhbbbbbb/article/details/103412724