ONWCHR: PROC OPTIONS(MAIN);
DCL I FIXED BIN(15);
DCL CSTR CHAR(4);
DCL WSTR WCHAR(4);
ON CONVERSION BEGIN;
DCL BADCHAR WCHAR(1);
PUT SKIP LIST("ON CONVERSION TRIGGERED");
BADCHAR = ONWCHAR();
PUT SKIP LIST (HEX(BADCHAR));
STOP;
END ;
WSTR = '9941004200430044'WX;
PUT SKIP LIST(HEX(WSTR));
CSTR = WSTR; /* '9941'wx conversion error */
PUT SKIP LIST(CSTR);
END;
次のように表示されます。
9941004200430044 ON CONVERSION TRIGGERED 9941
説明
ONWCHAR 関数は、CONVERSION 条件が発生する原因となるワイド文字を含んだ、長さが 1 のワイド文字列を返します。
ONWCHAR 関数は、CONVERSION 条件のために確立された ON ユニットにおいて使用できます。また、CONVERSION の ON ユニット でのエラー修正が失敗すると制御を得る、ERROR の ONユニット のために使用できます。