インターネットにアクセスできなくても、scanf_s()
関数を使用してキーボードからの入力を取得したい ( stdin
) 場合、バッファーを宣言する場所をどのように知ることができますか?
scanf_s()
現在、 Visual Studio で関数にステップ インすると、次のように表示されます。
#if __STDC_WANT_SECURE_LIB__
_Check_return_opt_
_CRT_STDIO_INLINE int __CRTDECL scanf_s(
_In_z_ _Scanf_s_format_string_ char const* const _Format,
...)
#if defined _NO_CRT_STDIO_INLINE // SCANF
;
scanf_s()
したがって、が 1 つの定義済み引数 ( ) を取ることがわかりますchar const * _Format
。この場合、これは be などのプレースホルダーである可能性がありますが"%s"
、2 番目の引数 (スキャンの結果を格納するバッファーのメモリ アドレス) には何もありません。