swscanf | Programming Place Plus C言語編 標準ライブラリのリファレンス

C言語編 標準ライブラリのリファレンス swscanf

先頭へ戻る

swscanf関数

概要 ワイド文字列から、変換指定を伴ったワイド文字列を受け取る。
ヘッダ wchar.h
形式 int swscanf(const wchar_t* s, const wchar_t* format, ...);
引数 s 入力文字列。
format 変換指定を伴った文字列。
... 入力された値を受け取るメモリアドレスの指定。format に含まれている変換指定子に対応した個数と型であること。
戻り値 変換を1つも行えないまま入力エラーが起きた場合は、EOF を返す。その他の場合には、正常に代入を行えた個数を返す。
詳細 文字列から得た値を変換指定に従って変換し、可変個引数の部分に指定したメモリアドレスへ格納する。変換指定については、scanf関数を参照。
注意 必要な個数の実引数が指定されていない場合の動作は未定義。余分に指定されている場合には、評価は行われるが、swscanf関数としては無視する。
使用例
#include <stdio.h>
#include <wchar.h>

int main(void)
{
    const wchar_t s[] = L"100 abc 2.5";

    int num;
    char str[10];
    double f;

    swscanf( s, L"%d %s %lf", &num, str, &f );
    printf( "%d %s %f\n", num, str, f );

    return 0;
}

実行結果:

100 abc 2.500000
関連 マルチバイト文字版の、sscanf関数がある。
解説章


参考リンク



更新履歴

'2018/4/17 全体的に文章を見直し修正。

'2018/2/1 C言語編全体で表記を統一するため、「フォーマット指定」を「変換指定」に改めた。

'2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ


このエントリーをはてなブックマークに追加
rss1.0 取得ボタン RSS