From owner-FreeBSD-tech-jp@jp.freebsd.org  Tue Oct 27 17:20:27 1998
Received: (from daemon@localhost)
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) id RAA03504;
	Tue, 27 Oct 1998 17:20:27 +0900 (JST)
	(envelope-from owner-FreeBSD-tech-jp@jp.FreeBSD.org)
Received: from TYO203.gate.nec.co.jp (TYO203.gate.nec.co.jp [202.32.8.211])
	by jaz.jp.freebsd.org (8.9.1+3.1W/8.7.3) with ESMTP id RAA03494
	for <FreeBSD-tech-jp@jp.freebsd.org>; Tue, 27 Oct 1998 17:20:23 +0900 (JST)
	(envelope-from shiozaki@ased.mt.nec.co.jp)
Received: from mailsv.nec.co.jp (mailsv-le1 [192.168.1.90])
	by TYO203.gate.nec.co.jp (8.9.1a/3.7W98092815) with ESMTP id RAA18326
	for <FreeBSD-tech-jp@jp.freebsd.org>; Tue, 27 Oct 1998 17:20:16 +0900 (JST)
Received: from asede1.ased.mt.nec.co.jp (asede1.ased.mt.nec.co.jp [133.201.62.3]) by mailsv.nec.co.jp (8.9.1a/3.7W-MAILSV-NEC) with ESMTP
	id RAA23403 for <FreeBSD-tech-jp@jp.freebsd.org>; Tue, 27 Oct 1998 17:19:57 +0900 (JST)
Received: from mtasedms.ased.mt.nec.co.jp (mtasedms [133.201.62.1]) by asede1.ased.mt.nec.co.jp (8.8.5+2.7Wbeta5/3.5Wbeta) with ESMTP id RAA03557 for <FreeBSD-tech-jp@jp.freebsd.org>; Tue, 27 Oct 1998 17:23:01 +0900 (JST)
Received: from localhost ([133.201.213.33]) by mtasedms.ased.mt.nec.co.jp
          (Netscape Messaging Server 3.5)  with ESMTP id 393
          for <FreeBSD-tech-jp@jp.freebsd.org>;
          Tue, 27 Oct 1998 17:21:05 +0900
To: FreeBSD-tech-jp@jp.freebsd.org
From: Takuya SHIOZAKI <shiozaki@ased.mt.nec.co.jp>
In-Reply-To: Your message of "27 Oct 1998 17:03:47 +0900"
	<i2k91m4ejg.fsf@tamtam.astec.co.jp>
References: <i2k91m4ejg.fsf@tamtam.astec.co.jp>
X-Mailer: Mew version 1.93 on Emacs 19.28 / Mule 2.3 (SUETSUMUHANA)
My-Status: haiboku-in="Aoi MATSUBARA"; bukatsudou="Marsh Mallow Club"
For-Your-Information: X-TrueType Server Ver1.0 is available now!!
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Message-Id: <19981027172134F.shiozaki@ased.mt.nec.co.jp>
Date: Tue, 27 Oct 1998 17:21:34 +0900 (JST)
X-Dispatcher: imput version 980905(IM100)
Lines: 56
Reply-To: FreeBSD-tech-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+980914
X-Sequence: FreeBSD-tech-jp 1853
Subject: [FreeBSD-tech-jp 1853] Re: how to impliment 'mbstowcs()' and 'wcstombs()'
Errors-To: owner-FreeBSD-tech-jp@jp.freebsd.org
Sender: owner-FreeBSD-tech-jp@jp.freebsd.org
X-Originator: shiozaki@ased.mt.nec.co.jp


$B1v:j!cG.$C$]$$!s%$%=%?!<!w2q<R$G$9!#(B


From: Murata Shuuichirou <mrt@astec.co.jp>
Subject: [FreeBSD-tech-jp 1851] Re: how to impliment 'mbstowcs()' and 'wcstombs()'
Date: 27 Oct 1998 17:03:47 +0900
Message-ID: <i2k91m4ejg.fsf@tamtam.astec.co.jp>

> > L'\0' $B$G%?!<%_%M!<%H$G$-$J$+$C$?;~E@$G$=$l$O$b$O$d40A4$J(B
> > $B%o%$%IJ8;zNs$8$c$J$$$o$1$G!";d$H$7$F$O!"$=$l$r(B
> > $B!V$O$_$@$7$F$k!W$H2r<a$7$F$k!"$HM}2r$7$F$/$@$5$$!#(B
> > # $B%o%$%IJ8;z$NG[Ns!"$J$i@5$7$$$,!#(B
> $B$J$k$[$I!"$=$&$9$k$H$=$N>l9g$O<ALd$NA0Ds$G$"$k!"(B
....
> m == n $B$,@.$jN)$?$J$/$J$C$A$c$$$^$9$M!#%o%$%I(B null $B$,$O$$$C$F(B
> $B$$$k$J$i(B m < n $B$G$9!#$^$"!"$1$C$-$g$/$O(B

$B$*$C$H!"$[$s$H$@!#<:Ni(B m(_ _)m

If an invalid character is encountered, mbstowcs() returns (size_t)-1
and may set errno to indicate the error. Otherwise, mbstowcs() returns
the number of the array elements modified (or required if pwcs is
null), not including a terminating 0 code, if any. The array will not
be zero-terminated if the value returned is n.

$B<BMQ>e$O(B m == n $B$@$C$?$i<:GT$H9M$($FLdBj$J$$%1!<%9$,B?$$$O$:$G$9!#(B


> In message <19981027142950F.shiozaki@ased.mt.nec.co.jp>,
>  `shiozaki@ased.mt.nec.co.jp' wrote:
> > 1. mbstowcs(NULL, mbs, n)$BJ,$o$j$"$F$k(B
> mbstowcs(NULL, mbs, n) + sizeof($B%o%$%IJ8;z(B)
> > 2. MB_CUR_MAX*$BJ8;z?tJ,$r$o$j$"$F$k(B
> MB_CUR_MAX*($BJ8;z?t(B + 1)$BJ,(B
> $B$9$k$7$+$J$$$o$1$@!#(B

$B$&!"NI$/$_$k$H!";d4*0c$$$7$F$^$9!#(B

$B@5$7$/$O!"(B2. $B$N>l9g$O(B wcstombs $B$N>l9g$G$9!#(B
mbstowcs $B$N>l9g$O!"@5$7$/=hM}$9$k$K$O(B 1 $B$NJ}K!$7$+$J$$$h$&$J5$$,$7$^$9!#(B

$B$^$?!"(B1 $B$N>l9g$b@5$7$/$O!"(B
mbstowcs(NULL, mbs, n)+1
$B$G$9$M(B (^^;;;

# $B%P%$%H?t$@$HEvA3(B (mbstowcs(NULL, mbs, n)+1)*sizeof(wchar_t) $B$H$J$k!#(B

$B$G$O!#(B
---
  $B1v:j(B $BBsLi(B - shiozaki@ased.mt.nec.co.jp
              Shiozaki@p20-23330.star.nec.co.jp
              tshiozak@isoternet.org

  $BF|K\EE5$(B($B3t(B)$B%7%9%F%`;v6H%0%k!<%W(B $B%7%9%F%`%=%U%H%&%'%";v6HK\It(B
  $B%U%m%s%H%*%U%#%9%7%9%F%`;v6HIt(B $BBhFs5;=QIt(B
