*(*s)++ = cp[0]; *(*s)++ = cp[1];
s[0] = cp[0]; s[1] = cp[1];
ucs4_to_jisx0208 (wchar_t wch, char **s, size_t avail){  unsigned int ch = (unsigned int) wch;  const char *cp = NULL;  if (avail < 2)    return 0;  if (ch < 0x100)    cp = jisx0208_from_ucs4_lat1[ch];  else if (ch >= 0x391 && ch <= 0x451)    cp = jisx0208_from_ucs4_greek[ch];  else    {      const struct jisx0208_ucs_idx *rp = jisx0208_from_ucs_idx;      while (ch > rp->end)	++rp;      if (ch >= rp->start)	cp = jisx0208_from_ucs_tab[rp->idx + ch - rp->start];    }  if (cp == NULL || cp[0] == '\0')    return UNKNOWN_10646_CHAR;  *(*s)++ = cp[0];  *(*s)++ = cp[1];  return 2;}