日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトル
目次
まえがき
リファレンス・セクション
   ≫ライブラリ関数一覧
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)


目次 索引




ワイド文字の書式文字列の制御のもとで出力をストリームに書き込みます。

形式

#include <wchar.h>

int fwprintf (FILE *stream, const wchar_t *format, ...);


引数



stream

ファイル・ポインタ。

format

書式指定を格納したワイド文字の文字列を指すポインタ。書式指定および変換指定とそれに対応する引数の詳細については,『HP C ランタイム・ライブラリ・リファレンス・マニュアル(上巻)』第 2 章を参照してください。

...

省略可能な式であり,式の型は書式指定に指定した変換指定に対応します。

変換指定を指定しない場合は,出力ソースを省略できます。変換指定を指定する場合は,関数呼び出しに変換指定と正確に同じ数の出力ソースを指定する必要があります。変換指定は出力ソースの型と一致しなければなりません。

変換指定は左から右への順に出力ソースに対応付けられます。出力ソースの数の方が多い場合は,超過するソースは無視されます。


説明

fwprintf関数は, format によって示されるワイド文字の文字列の制御のもとで, stream によって示されるストリームに出力を書き込みます。書式指定は,後続の引数を出力に変換する方法を指定します。書式指定に対して引数が不足している場合は,動作は未定義になります。引数が残っているのに,書式指定が不足する場合は,超過する引数は評価されますが,無視されます。書式指定文字列の末尾が検出されると, fwprintf関数は制御を呼び出し元に返します。

format 引数は,次のような 0 個以上のディレクティブで構成されます。

  • 通常のワイド文字 (パーセント記号 (%) を除く)

  • 変換指定


戻り値

n 書き込んだワイド文字の文字数。
負の値 エラーを示します。 errno は次のいずれかの値に設定されます。

  • EILSEQ---不正な文字が検出されました。

  • EINVAL---引数が不足しています。

  • ENOMEM---変換のために使用できるメモリが不足しています。

  • ERANGE---浮動小数点演算オーバフロー。

  • EVMSERR---変換不可能な OpenVMS エラー。 vaxc$errno には OpenVMS エラー・コードが格納されます。これは,オーバフローが発生したために数値への変換が失敗したことを示します。

I/O サブシステムからエラーが返された場合,この関数は errno を次の値に設定することがあります。

  • EBADF---ファイル記述子が不正です。

  • EIO---I/O エラー。

  • ENOSPC---ファイルを格納しているデバイスに空き領域がありません。

  • ENXIO---デバイスが存在しません。

  • EPIPE---パイプが壊れています。

  • ESPIPE---追加のためにオープンされているファイルで不正なシークが実行されました。

  • EVMSERR---変換不可能な OpenVMS エラー。 vaxc$errno には,OpenVMS エラー・コードが格納されます。これは,対応する C エラー・コードがない I/O エラーが発生したことを示します。


次の例では,日付と時刻を "Sunday, July 3, 10:02" という形式でプリントし,その後, pi を小数点以下 5 桁まで印刷する方法を示しています。

 #include <math.h> 
 #include <stdio.h> 
 #include <wchar.h> 
 /*...*/ 
 wchar_t *weekday, *month; /* pointers to wide-character strings */ 
 int day, hours, min; 
 fwprintf(stdout, L"%ls, %ls %d, %.2d:%.2d\n", 
    weekday, month, day, hour, min); 
 fwprintf(stdout, L"pi = %.5f\n", 4 * atan(1.0)); 
    


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.