|
≫ |
|
|
|
HP OpenVMS HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)
wstr1 がポイントする文字列の中で,
wstr2 がポイントする文字列に含まれるワイド文字のシーケンスの最初のオカレンスを探します。
形式
#include <wchar.h>
wchar_t *wcswcs (const wchar_t *wstr1, const wchar_t*wstr2);
関数バリアント
wcswcs関数は,それぞれ 32 ビットと 64 ビットのポインタ・サイズで使用するための
_wcswcs32と
_wcswcs64という名前のバリアントを持っています。ポインタ・サイズ固有の関数の使用方法については,『HP C ランタイム・ライブラリ・リファレンス・マニュアル(上巻)』第 1.9 節を参照してください。
引数
wstr1, wstr2null で終了するワイド文字列へのポインタ。
戻り値
ポインタ
|
発見されたワイド文字列へのポインタ。
|
NULL
|
ワイド文字列が発見されなかったことを示します。
|
例
#include <stdlib.h>
#include <stdio.h>
#include <wchar.h>
/* This test uses wcswcs() to find the occurrence of each */
/* subwide-character string, string1 and string2, within */
/* the main wide-character string, lookin. */
#define BUF_SIZE 50
main()
{
static char lookin[] = "that this is a test was at the end";
char string1[] = "this",
string2[] = "the end";
wchar_t buffer[BUF_SIZE],
input_buffer[BUF_SIZE];
/* Convert lookin to wide-character format. */
/* Buffer and print it out. */
if (mbstowcs(buffer, lookin, BUF_SIZE) == (size_t)-1) {
perror("mbstowcs");
exit(EXIT_FAILURE);
}
printf("Buffer to look in: %S\n", buffer);
/* Convert string1 to wide-character format and use */
/* wcswcs() to locate it within buffer */
if (mbstowcs(input_buffer, string1, BUF_SIZE) == (size_t)-1) {
perror("mbstowcs");
exit(EXIT_FAILURE);
}
printf("this: %S\n", wcswcs(buffer, input_buffer));
/* Convert string2 to wide-character format and use */
/* wcswcs() to locate it within buffer */
if (mbstowcs(input_buffer, string2, BUF_SIZE) == (size_t)-1) {
perror("mbstowcs");
exit(EXIT_FAILURE);
}
printf("the end: %S\n", wcswcs(buffer, input_buffer));
exit(1);
}
|
この例のプログラムを実行すると,次の結果が生成されます。
Buffer to look in: that this is a test was at the end
this: this is a test was at the end
the end: the end
|
|