sscanf_s、swscanf_s
stdio.h:インデックス への移動
ヘッダー ファイル
stdio.h
カテゴリ
書式付き入出力関数
構文
int sscanf_s(const char * restrict s, const char * restrict format, [,address,...]);
int swscanf_s(const wchar_t * restrict s, const wchar_t * restrict format, [,address,...]);
説明
sscanf の代わりとなる、セキュリティを強化した関数です。
sscanf_s は、fscanf_s、fwscanf_s と同等のものですが、入力がストリームではなく文字列です。 文字列の終わりは、fscanf_s の EOF(end-of-file)と同等です。
戻り値
成功すると、sscanf は、スキャン、変換、格納が成功した入力フィールドの数を返します。スキャンされたけれども格納されなかったフィールドは、この戻り値に含まれません。 最初の引数が一致しないエラーが発生した場合に、この戻り値がゼロになる可能性があります。
変換がまだ何も行われない間にエラーが発生した場合には、EOF を返します。
例
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int x;
char c;
char buffer[80]="4 a";
sscanf(buffer, "%d %c", &x, &c);
printf_s("%d %c", x, c);
return 0;
}
移植性
| POSIX | Win32 | ANSI C | ANSI C++ | |
|---|---|---|---|---|
|
sscanf_s |
+ |
+ |
+ |
+ |
|
swscanf_s |
+ |
+ |
+ |