Newsgroups: fj.sys.news,fj.lang.c
Path: galaxy.trc.rwcp.or.jp!coconuts.jaist!wnoc-tyo-news!astecgw!aoyama
From: aoyama@astec.co.jp (Aoyama Hisao)
Subject: Re: How sould I cast input of ispunct()
In-Reply-To: sakamoto@sm.sony.co.jp's message of 17 May 1995 06:04:00 GMT
Message-ID: <AOYAMA.95May21000450@sakura.astec.co.jp>
Sender: news@astec.co.jp
Nntp-Posting-Host: sakura.astec.co.jp
Organization: ASTEC, Inc. Tokyo, Japan
References: <AOYAMA.95May17131814@baron.astec.co.jp> <3pc3kg$rq1@csdnews.sm.sony.co.jp>
Date: Sat, 20 May 1995 15:04:50 GMT
Lines: 150
Xref: galaxy.trc.rwcp.or.jp fj.sys.news:2399 fj.lang.c:1877
X-originally-archived-at: http://galaxy.rwcp.or.jp/text/cgi-bin/newsarticle2?ng=fj.lang.c&nb=1877&hd=a
X-reformat-date: Mon, 18 Oct 2004 15:18:22 +0900
X-reformat-comment: Tabs were expanded into 4 column tabstops by the Galaxy's archiver. See http://katsu.watanabe.name/ancientfj/galaxy-format.html for more info.

In article <3pc3kg$rq1@csdnews.sm.sony.co.jp>
sakamoto@sm.sony.co.jp (Tomohiko Sakamoto) writes:

   In article <AOYAMA.95May17131814@baron.astec.co.jp>,
   aoyama@astec.co.jp (Aoyama Hisao) says:
   > $B:#(B NEWS-OS 6.0 $B$O$J$$$N$G3N$+$a$i$l$^$;$s$,!$E,@Z$J@bL@$J$7(B
   > $B$K$3$NNc$@$1$,:\$C$F$$$k$J$i$"$^$jNI$$%^%K%e%"%k$G$O$J$$$h(B
   > $B$&$K;W$$$^$9!%(B

      $BJ8;zNs$r07$&$3$l$i$N%^%/%m$KBP$9$k0z?t$,4X?t$NDj5A0h$K$J$$>l9g!"(B
      $B$=$N7k2L$OITDj$G$9!#(B
      NEWS-OS $B$N(B C $B%3%s%Q%$%i$G$O!"(Bchar $B$,%G%U%)%k%H$G$OId9fIU$-$J$N$G!"(B
      char buf[BUFSIZ], *p;  $B$H@k8@$7$F(B  isspace(buf[i]) $B$d(B isdigit(*p)
      $B$H$$$&;H$$J}$r$9$k$H!"(B8 $B%S%C%H%3!<%I$KBP1~$G$-$^$;$s!#(B
      isspace((unsigned char)buf[i])  $B$d(B  isdigit((unsigned  char)*p)
      $B$H$9$k$+!"(B unsigned char buf[BUFSIZ], *p;  $B$H@k8@$7$F$/$@$5$$!#(B

   $B$H=q$+$l$F$$$^$9$,!"$3$l$G$b%@%a$G$9$+(B?

buf $B$d(B p $B$N7?$,(B char $B$G$"$k$H$$$&A0Ds$,4^$^$l$F$$$kLu$G$9$M!#(B


   >      $B$7$+$7!"$A$g$C$H9M$($k$H(B ispunct $B$O!"(B
   >       int ispunct(int c);
   >    $B$H$7$FDj5A$5$l$F$*$j!"(B
   > 
   > $B%X%C%@!<%U%!%$%k$K$"$C$?$N$G$9$+(B?
   > 
   > $B%^%/%m$N7?@k8@$H$$$&$N$bJQ$J$N$G!$$3$l$O4X?t$N(B ispunct() $B$N(B
   > $B@k8@$J$N$G$7$g$&!%$I$N(B UNIX $B$G$b!$IaDL(B ($BI,$:(B?) $B%^%/%m$H4X?t(B
   > $B$NN>J}$,$"$k$h$&$G$9!%(B

   $B3N$+$K4X?t$b$"$j$^$9$,!"(BANSI C (-Xa $B%*%W%7%g%s(B)$B$G(B lint $B$r5/F0$7$?;~!"(B
   ctype $B%^%/%m$,E83+$5$l$:!"4X?t$H$7$F7?$N%A%'%C%/$,9T$o$l$^$9!#(B


   > NEWS-OS 6.0 $B0J30$N(B OS $B$G!$!VF|K\8l2=!W$5$l$F$$$k$b$N$K$O(B
   > 
   >   #define space(c)((__table + 1)[c&0xff] & __space_bit)
   > 
   > $B$N$h$&$J46$8$G%^%/%m$NDj5A$,$5$l$F$$$k>l9g$,$"$j$^$9!%(B
   > JLE $B$D$-(B SunOS $B$H$+(B EWS4800 $B$H$+$,$=$&$G$9!%(B
   > 
   > 0xff $B$K$h$k%^%9%/$O!$(Bunsinged char $B$K%-%c%9%H$9$k$N$HF1$8$h(B
   > $B$&$J0UL#$G$9!%(B

   NEWS-OS 4.x $B$b$=$&$G$9!#(B
   $B$7$+$7!"$3$l$G$O(B EOF $B$r0z?t$H$7$FEO$;$:!"(BANSI C $B$N5,3J$K$OE,9g$7$^$;$s!#(B

$B$b$H$b$H(B ANSI C $B%3%s%Q%$%i$G$O$J$$$N$G!"(BJLE $B$D$-(B SunOS $B$N(B cc 
$B$O(B ANSI C $B$N5,3J$KE,9g$7$J$/$F$bIT;W5D$G$O$J$$$G$7$g$&!#(B

EWS4800 $B$G$O!"(B(K&R $B%3%s%Q%$%i$,$=$&$J$N$O!"9=$o$J$$$H$7$F(B)
ANSI $B%3%s%Q%$%i$NJ}$G$b%^%/%m$NCf$G%^%9%/$7$F$$$k$h$&$J$N$G!"(B
$B!V(BANSI C $B$N5,3J$KE,9g$7$J$$!W$3$H$,LdBj;k$5$l$k$N$+$b$7$l$^(B
$B$;$s(B ($B<+J,$G(B __RESTRICT_ONLY_ASCII $B$H$$$&%^%/%m$rDj5A$9$l(B
$B$P!V(BANSI C $B$N5,3J$KE,9g$9$k!W$h$&$G$9(B)$B!#(B

   > 0xff $B$G%^%9%/$7$?$j(B unsinged char $B$K%-%c%9%H$9$k$H!$JQ?t$NCM(B
   > $B$,(B (int)0xff20 $B$N>l9g(B isspace() $B$O(B true $B$rJV$7$F$7$^$$$^$9!%(B
   > $B$3$l$O!$%W%m%0%i%`$r=q$/?M$,0U?^$7$J$$$3$H$G$7$g$&!%(B
   > 
   > $B$H$$$&$3$H$G!$%7%9%F%`$N%^%/%m$,>!<j$K%^%9%/$7$$$F$$$k$h$&$J>l(B
   > $B9g$r4^$a$F%]!<%?%V%k$G$"$k$?$a$K$O(B isspace(c) $B$H$+(B
   > isspace((unsigned char)c) $B$H=q$+$:$K!$(B
   > 
   > (isascii(c) && isspace(c))
   > 
   > $B$H=q$/$N$,NI$$$H;W$$$^$9(B ($B$3$l$C$F!$F|K\$N>o<1$8$c$J$$$N(B?)$B!%(B

   isascii() $B$O(B ANSI C $B$K$O$"$j$^$;$s!#(BANSI C $B$O!"J8;z%3!<%I$,(B ASCII $B0J30(B
   ($BNc$($P(B EBCDIC)$B$G$"$C$F$b$h$$$h$&$K5,3J$,Dj$a$i$l$F$$$^$9!#(B

$BJL$K(B EBSDIC $B$h$j(B ASCII $B$N$[$&$,0N$$$H$+8@$C$F$$$kLu$G$O(B
$B$"$j$^$;$s!#(B

$B%3!<%I$N0U?^$O!"!V$^$:G[Ns$NCf$NCM$G$"$k$3$H$r3NG'$7$F$+$i!"(B
$BI=$r0z$/!W$G$9!#(B

   NEWS-OS 6.x $B$N%^%K%e%"%k$G(B (unsigned char) $B$rIU$1$m$H8@$C$F$$$k$N$O!"(B
   char $B$rEO$9>l9g$O!"$H$$$&A0Ds$N2<$G$G$9!#(B

$B$=$&$G$7$?$M!#(B

   0xff20 $B$r(B isspace() $B$KEO$=$&$H$9$k$N$OO@30$G$9!#(B

$B$@$+$i$3$=(B

isspace() $B$,Dj5A$5$l$?HO0O$NCM$G$"$k$3$H$r3N$+$a(B 
(EOF $B$O6uGrJ8;z$G$J$$$+$iF1;~$K<N$F$k(B)$B!"$=$l$+$i(B
isspace() $B$r;H$&$N$,NI$$(B

$B$H8@$&<gD%$G$9!#(B

# sakamoto $B$5$s$N(B
#
#   0xff20 $B$r(B isspace() $B$KEO$=$&$H$9$k$N$OO@30$G$9!#(B
#
# $B$N0UL#$O!"(B
#
#isspace() $B$N0z?t$,(B int $B$@$H$7$F$b!"IaDL$N>l9g!"CM$O(B 
#char $B$@$C$?CM$,(B int $B$K(B promote $B$5$l$?$b$N$@$+$i!"(B
#0xff20 $B$N$h$&$K$J$k$O$:$O$J$$$N$G!"9MN8$7$J$/$F$bNI$$(B
#
# $B$+$b$7$l$^$;$s!#(B
# 
# $B$=$&$@$C$?$iM}2r$G$-$k$7!"$@$$$?$$F10U$G$-$k$H8@$C$F$b$h$$!#(B
#
# $B$7$+$7!"B>?M$N=q$$$?$b$N$J$i!"!VO@30!W$G$bB8:_$7$?$i$7$g$&(B
# $B$,$J$$(B...

$B$b$C$HGX7J$+$i@bL@$9$l$P!"(B

1. $B!V%]!<%?%V%k!W$H8@$C$?$i!"(BANSI C $B$K(B ($B40A4$K(B) $BE,9g$7$?=hM}(B
   $B7O$GI,$:F0$/$H$$$&$3$H$G$O$J$/!"$J$k$Y$/B?$/$N8=<B$KB8:_(B
   $B$9$k=hM}7O$GF0$/$3$H(B

2. $B!V%]!<%?%V%k$J=q$-J}!W$H8@$C$?$i!"<B:]$K!V%]!<%?%V%k!W$G(B
   $B$"$k$@$1$G$J$/!"B>?M$N=q$$$?%W%m%0%i%`$rA4ItFI$^$:$KC;(B
   $B4|4V$G=$@5$7$J$1$l$P$J$i$J$$$H$-$K$b!"JQ?t$,(B int $B$@$H$+(B 
   char $B$@$H$+!"(Bsigned $B$@$H$+(B unsigned $B$@$H$+5$$K$7$J$/$F$b!"(B
   $B$=$NItJ,$NF0$-$,I,$:0U?^DL$j$K$J$k=q$-J}(B

$B$H$$$&$3$H$rA0Ds$K$7$F!"(B

   > (isascii(c) && isspace(c))

$B$H$$$&=q$-J}$,NI$$$H8@$&<gD%$G$7$?$,!"(Bisascii() $B$,B8:_$7$J$$(B
$B$3$H$,8=<B$KLdBj$K$J$k$J$i!"(B

(!(c & ~0xff) && isspace(c))

$B$H$$$&=q$-J}$,NI$$$H8@$$49$($F$b9=$$$^$;$s(B (isascii() $B%^%/%m(B
$B<+BN$O;d$N<gD%$HK\<AE*$J4X78$O$J$$(B)$B!#(B

$B$3$NJ}K!$N7gE@$O!"F0$-$,JQ$J$N$G%3!<%I$r8+$k$H(B

while(ispace(c++)){
...
}

$B$J$I$H=q$$$F$"$k>l9g$K!"=$@5$,LLE]$J$3$H$G$9(B ($BA08e$rFI$^$6$k(B
$B$rF@$J$$(B)$B!#(B


--
----
Hisao Aoyama $B@D;3(B $B>0IW(B
ASTEC, Inc.  $B!J3t!K%"%9%F%C%/(B
aoyama@astec.co.jp
