1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
.\" Copyright (c) Bruno Haible <haible@clisp.cons.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" References consulted:
.\" GNU glibc-2 source code and manual
.\" Dinkumware C library reference http://www.dinkumware.com/
.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html
.\" ISO/IEC 9899:1999
.\"
.\" Translated into Spanish Tue Mar 3 15:28:21 CET 1998 by Gerardo
.\" Aburruzaga Garca <gerardo.aburruzaga@uca.es>
.\" Translation revised Sun Aug 6 2000 by Juan Piernas <piernas@ditec.um.es>
.\"
.TH MBTOWC 3 "25 julio 1999" "GNU" "Manual del Programador de Linux"
.SH NOMBRE
mbtowc \- convierte una secuencia multibyte en un carcter ancho
.SH SINOPSIS
.nf
.B #include <stdlib.h>
.sp
.BI "int mbtowc (wchar_t *" pwc ", const char *" s ", size_t " n );
.fi
.SH DESCRIPCIN
El principal caso para esta funcin se da cuando \fIs\fP no es NULL y
\fIpwc\fP no es NULL. En este caso, la funcin \fBmbtowc\fP inspecciona,
como mucho, \fIn\fP bytes de la cadena multibyte \fIs\fP, extrae el
siguiente carcter multibyte completo, lo convierte a un carcter ancho y lo
almacena en \fI*pwc\fP. Actualiza un estado de cambios interno slo conocido
por la funcin mbtowc. Si \fIs\fP no apunta aun byte '\\0', la funcin
devuelve el nmero de bytes consumidos de \fIs\fP. En otro caso, devuelve 0.
.PP
Si los primeros \fIn\fP bytes de \fIs\fP no contienen un carcter multibyte
completo, o si contiene una secuencia multibyte invlida, \fBmbtowc\fP
devuelve \fI-1\fP. Esto puede ocurrir incluso sif \fIn\fP >= \fIMB_CUR_MAX\fP,
si la cadena multibyte contiene secuencias de cambios redundantes.
.PP
Un caso diferente se da cuando \fIs\fP no es NULL pero \fIpwc\fP s lo es.
En este caso, la funcin \fBmbtowc\fP se comporta como antes pero no
almacena el carcter ancho obtenido en memoria.
.PP
Un tercer caso se da cuando \fIs\fP es NULL. En este caso, \fIpwc\fP y
\fIn\fP se ignoran. La funcin \fBmbtowc\fP
.\" The Dinkumware doc and the Single Unix specification say this, but
.\" glibc doesn't implement this.
devuelve el estado de cambios, slo conocido por esta funcin, a su estado
inicial y devuelve un valor distinto de cero si la condificacin posee un
estado de cambios no trivial o cero si es una codificacin sin estado.
.SH "VALOR DEVUELTO"
Si \fIs\fP no es NULL, la funcin \fBmbtowc\fP devuelve el nmero de bytes
consumidos de \fIs\fP, 0 si \fIs\fP apunta a un byte nulo o -1 en caso de
fallo.
.PP
Si \fIs\fP es NULL, la funcin \fBmbtowc\fP devuelve un valor distinto de
cero si la codificacin posee un estado de cambios no trivial o cero si es
una codificacin sin estado.
.SH "CONFORME A"
ISO/ANSI C, UNIX98
.SH "VASE TAMBIN"
.BR mbrtowc "(3), " mbstowcs "(3), " MB_CUR_MAX (3)
.SH OBSERVACIONES
El comportamiento de \fBmbtowc\fP depende de la categora LC_CTYPE de la
localizacin actual.
.PP
Esta funcin no es segura en un entorno multihilos. La funcin \fBmbrtowc\fP
proporciona una interfaz mejor con la misma funcionalidad.
|