File: mbsinit.3

package info (click to toggle)
manpages-fr 1.58.1-3
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 10,104 kB
  • ctags: 4
  • sloc: makefile: 106; sh: 8
file content (68 lines) | stat: -rw-r--r-- 3,008 bytes parent folder | download
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
.\" 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
.\"
.\" Traduction 29/08/2000 par Christophe Blaess (ccb@club-internet.fr)
.\" LDP 1.30
.\" Mise  jour 06/06/2001 - LDP-man-pages-1.36
.\" MJ 21/07/2003 LDP-1.56
.TH MBSINIT 3 "21 juillet 2003" LDP "Manuel du programmeur Linux"
.SH NOM
mbsinit \- Vrifier si la conversion est dans l'tat initial.
.SH SYNOPSIS
.nf
.B #include <wchar.h>
.sp
.BI "int mbsinit (const mbstate_t *" ps );
.fi
.SH DESCRIPTION
La conversion de caractres entre la reprsentation multi-octets et les caractres larges emploie
un tat de type \fBmbstate_t\fP. La conversion d'une chane utilise un automate  tats finis.
Lorsqu'elle est interrompue aprs la conversion d'un nombre entier de caractres, il peut tre ncessaire
de mmoriser son tat pour pouvoir traiter ultrieurement le reste de la chane. Un tel tat de conversion
est indispensable pour certains encodages tels que ISO-2022 et UTF-7.
.PP
L'tat initial est celui du dbut de la conversion de chane. Il y a deux types d'tats, celui utilis par les conversions
multi-octets en caractres larges, comme \fBmbsrtowcs\fP, et celui employ par les conversions inverses, comme \fBwcsrtombs\fP.
Toutefois, les deux types peuvent tre stocks dans une variable \fBmbstate_t\fP, et ils se prsentent tous deux sous
la mme forme initiale.
.PP
Pour les codages 8 bits ou UTF-8, tous les tats sont quivalent  l'tat initial.
Pour les encodages multioctets comme UTF-8, EUC-* BIG5 ou SJIS, la conversion
de caractre large en multioctet ne produit jamais d'tat non-initial, mais
la conversion multioctet en caractre large comme \fBmbrtowc\fP peut produire
un tat non initial si elle est interrompue au milieu d'un caractre.
.PP
Une possibilit pour crer un tat mbstate_t initial est de le fixer  zro\ :
.nf
  mbstate_t state;
  memset(&state,0,sizeof(mbstate_t));
.fi

Sous Linux, on peut aussi utiliser la ligne suivante, mme si elle dclenche des avertissements du compilateur :
.nf
  mbstate_t state = { 0 };
.fi
.PP
La fonction \fBmbsinit\fP vrifie si \fI*ps\fP correspond  un tat initial.
.SH "VALEUR RENVOYE"
La fonction \fBmbsinit\fP renvoie une valeur non-nulle si \fI*ps\fP est dans l'tat initial, ou si \fIps\fP est un pointeur NULL.
Sinon elle renvoie zro.
.SH "CONFORMIT"
ISO/ANSI C, UNIX98
.SH "VOIR AUSSI"
.BR mbsrtowcs (3),
.BR wcsrtombs (3)
.SH NOTES
Le comportement de \fBmbsinit\fP dpend de la catgorie LC_CTYPE de la localisation.
.SH TRADUCTION
Christophe Blaess, 2000-2003.