Section courante

A propos

Section administrative du site

 Langage  Elément  Tutoriel  Aide 
ABAP/4
Ada
Assembleur
Assembly & bytecode
ASP (Active Server Pages)
Basic
C
C++
C# (C Sharp)
Cobol
ColdFusion
Fortran
HTML
Java
JavaScript
LISP
Logo
LotusScript
Oberon
Pascal
Perl
PHP
PL/1
Prolog
Python
Rebol
REXX
Ruby
SAS
NoSQL
SQL
Swift
X++ (Axapta)
GNAT
SMALLAda
VHDL
Assembleur 370
Assembleur 1802
Assembleur 4004
Assembleur 6502
Assembleur 6800
Assembleur 68000
Assembleur 8080 et 8085
Assembleur 8089
Assembleur 80x86
Assembleur AGC4
Assembleur ARM
Assembleur DPS 8000
Assembleur i860
Assembleur Itanium
Assembleur MIPS
Assembleur PDP-11
Assembleur PowerPC
Assembleur RISC-V
Assembleur SPARC
Assembleur SuperH
Assembleur UNIVAC I
Assembleur VAX
Assembleur Z80
Assembleur Z8000
Assembleur z/Architecture
ASSEMBLER/MONITOR 64
Micol Assembler
GFA Assembler
A86
MASM (Macro Assembler)
TASM (Turbo Assembler)
CIL
Jasmin
LLVM
MSIL
Parrot
P-Code (PCode)
SWEET16
G-Pascal
ASP 1.0
ASP 2.0
ASP 3.0
ASP.NET
ASP.NET Core
ABasiC (Amiga)
Adam SmartBASIC
Altair BASIC
AmigaBASIC (Amiga)
AMOS Basic (Amiga)
Atari Basic (Atari 400, 600 XL, 800, 800XL)
Basic Apple II (Integer BASIC/APPLESOFT)
Basic Commodore 64 (CBM-BASIC)
Basic Commodore 128 (BASIC 7.0)
Basic Commodore VIC-20 (CBM-BASIC 2.0)
Basic Coco 1 (Color Basic)
Basic Coco 2 (Extended Color Basic)
Basic Coco 3 (Extended Color Basic 2.0)
BASICA (PC DOS)
Basic Pro
BBC BASIC
Blitz BASIC (Amiga)
DarkBASIC
Dartmouth BASIC
GFA-Basic (Atari ST/Amiga)
GWBASIC (MS-DOS)
Liberty BASIC
Locomotive BASIC (Amstrad CPC)
MSX-Basic
Omikron Basic (Atari ST)
Oric Extended Basic
Power Basic
Quick Basic/QBasic (MS-DOS)
Sinclair BASIC (ZX80, ZX81, ZX Spectrum)
ST BASIC (Atari ST)
Turbo Basic
Vintage BASIC
VBScript
Visual Basic (VB)
Visual Basic .NET (VB .NET)
Visual Basic pour DOS
Yabasic
BeckerBASIC
SIMONS' BASIC
Basic09 d'OS-9
Disk Extended Color Basic
Basic09 d'OS-9
Disk Extended Color Basic
Access
Excel
Visual Basic pour Windows
Visual Basic .NET pour Windows
C Shell Unix (csh)
C pour Amiga
C pour Atari ST
C pour DOS
C pour Falcon030
C pour GEMDOS (Atari ST)
C pour Linux
C pour PowerTV OS
C pour OS/2
C pour Unix
C pour Windows
Aztec C
CoCo-C
GNU C
HiSoft C
IBM C/2
Introl-C
Lattice C
Microsoft C
MinGW C
MSX-C
Open Watcom C
OS-9 C Compiler
Pure C
Quick C
Turbo C
HiSoft C for Atari ST
HiSoft C for CP/M (Amstrad CPC)
C++ pour OS/2
C++ pour Windows
Borland C++
C++Builder
IBM VisualAge C++
Intel C++
MinGW C++
Open Watcom C++
Symantec C++
Turbo C++
Visual C++
Visual C++ .NET
Watcom C++
Zortech C++
C# (C Sharp) pour Windows
Apple III Cobol
Microsoft Cobol
BlueDragon
Lucee
OpenBD
Railo
Smith Project
Microsoft Fortran
WATFOR-77
CSS
FBML
Open Graph
SVG
XML
XSL/XSLT
LESS
SASS
GCJ (GNU)
JSP
Jython
Visual J++
Node.js
TypeScript
AutoLISP
ACSLogo
LotusScript pour Windows
Amiga Oberon
Oberon .NET
Apple Pascal
Delphi/Kylix/Lazarus
Free Pascal
GNU Pascal
HighSpeed Pascal
IBM Personal Computer Pascal
Lisa Pascal
Maxon Pascal
MPW Pascal
OS-9 Pascal
OSS Personal Pascal
Pascal-86
Pascal du Cray Research
Pascal/VS
Pascal-XT
PURE Pascal
QuickPascal
RemObjets Chrome
Sun Pascal
THINK Pascal
Tiny Pascal (TRS-80)
Turbo Pascal
UCSD Pascal
VAX Pascal
Virtual Pascal
Turbo Pascal for CP/M-80
Turbo Pascal for DOS
Turbo Pascal for Macintosh
Turbo Pascal for Windows
CodeIgniter (Cadre d'application)
Drupal (Projet)
Joomla! (Projet)
Phalanger (PHP .NET)
phpBB (Projet)
Smarty (balise)
Twig (balise)
Symfony (Cadre d'application)
WordPress (Projet)
Zend (Cadre d'application)
PL360
PL/M-80
PL/M-86
Turbo Prolog
CPython
IronPython
Jython
PyPy
AREXX
Regina REXX
JMP
Btrieve
Cassandra
Clipper
CouchDB
dBASE
Hbase
Hypertable
MongoDB
Redis
Access
BigQuery
DB2
H2
Interbase
MySQL
Oracle
PostgreSQL
SAP HANA
SQL Server
Sybase
U-SQL
Introduction
Les constantes
Les structures de données
Les fonctions de base
Les fonctions avancées
Les fonctions utilitaires
Les fonctions d'accès aux fichiers gzip
Les fonctions de somme de contrôle
Les fonctions non documentées
Les premiers pas
Préface
Notes légales
Dictionnaire
Recherche

Les constantes

Valeurs de vidage autorisées ; voir deflate() et inflate() :

  1. #define Z_NO_FLUSH      0  /* Pas de vidage des données compressées, utilisée lorsqu'aucune sortie compressée n'est prête. */
  2. #define Z_PARTIAL_FLUSH 1  /* Vidage partiel des données compressées, utilisé pour permettre à l'algorithme de sortir un bloc complet mais pas nécessairement tous les résultats. */
  3. #define Z_SYNC_FLUSH    2  /* Vidage synchronisé, garantit que les données précédemment compressées sont correctement sorties et que la compression reprend à un endroit sûr. */
  4. #define Z_FULL_FLUSH    3  /* Vidage complet des données compressées, ce qui assure qu'une fenêtre de compression soit réinitialisée. Utilisé principalement pour la compression et la décompression de flux. */
  5. #define Z_FINISH        4  /* Indique que la compression est terminée et que le flux de sortie doit être terminé. */
  6. #define Z_BLOCK         5  /* Traite un bloc de compression complet sans demander de vidage. Cela peut être utile pour des contrôles de flux plus fins. */
  7. #define Z_TREES         6  /* Indique que les arbres de compression (codage des symboles) doivent être envoyés, mais sans traiter réellement les données. */

Codes de retour pour les fonctions de compression/décompression. Les valeurs négatives sont des erreurs, les valeurs positives sont utilisées pour des événements spéciaux mais normaux :

  1. #define Z_OK            0    /* Opération réussie, aucune erreur. Cette valeur est retournée lorsque la fonction Zlib se termine sans problème. */
  2. #define Z_STREAM_END    1    /* La fin du flux de données a été atteinte. Cela signifie que la compression ou la décompression a réussi et que tout le flux a été traité. */
  3. #define Z_NEED_DICT     2    /* Un dictionnaire est nécessaire pour la décompression (appliqué lors de la décompression avec des données compressées nécessitant un dictionnaire pour un décryptage correct). */
  4. #define Z_ERRNO        (-1)  /* Erreur liée à un problème système ou à un appel de fonction standard (généralement en cas d'erreur d'entrée/sortie). */
  5. #define Z_STREAM_ERROR (-2)  /* Erreur interne du flux. Cela se produit lorsque le flux de compression ou de décompression est dans un état invalide (par exemple, données mal formatées ou incohérences dans l'état du flux). */
  6. #define Z_DATA_ERROR   (-3)  /* Erreur de données. Cela se produit lorsque les données d'entrée sont corrompues ou mal formatées pour la compression ou la décompression. */
  7. #define Z_MEM_ERROR    (-4)  /* Erreur de mémoire. Cela signifie que Zlib n'a pas pu allouer suffisamment de mémoire pour effectuer l'opération demandée. */
  8. #define Z_BUF_ERROR    (-5)  /* Erreur de tampon. Cela se produit lorsque la taille du tampon est insuffisante pour contenir les données traitées pendant la compression ou la décompression. */
  9. #define Z_VERSION_ERROR (-6) /* Erreur de version. Cela indique qu'il y a une incompatibilité entre les versions de la bibliothèque Zlib utilisées, ou un problème avec le format de compression/décompression. */

Les niveaux de compression :

  1. #define Z_NO_COMPRESSION         0  /* Aucun compression. Cette option indique que les données ne seront pas compressées,
                                           ce qui est utile pour les cas où la compression n'est pas nécessaire ou si les données sont déjà compressées. */
  2. #define Z_BEST_SPEED             1  /* Meilleure vitesse de compression. Cette option privilégie la rapidité de compression
                                           au détriment du taux de compression, ce qui permet d'obtenir des résultats plus rapidement, mais avec des fichiers plus volumineux. */
  3. #define Z_BEST_COMPRESSION       9  /* Meilleure compression. Cette option donne la compression la plus élevée, produisant
                                           des fichiers de plus petite taille, mais avec un coût de performance plus élevé. */
  4. #define Z_DEFAULT_COMPRESSION  (-1) /* Compression par défaut. Cette option laisse Zlib choisir automatiquement le
                                           niveau de compression basé sur une valeur par défaut, généralement un compromis entre vitesse et taux de compression. */

Stratégie de compression - voir deflateInit2() :

  1. #define Z_FILTERED             1  /* Stratégie de compression filtrée. Cette stratégie est utilisée pour les données
                                         avec des motifs répétitifs, comme les images ou les fichiers texte, où un filtre
                                         est appliqué avant la compression pour améliorer le taux de compression. */
  2. #define Z_HUFFMAN_ONLY         2  /* Stratégie de compression utilisant uniquement Huffman coding. Cette stratégie
                                         utilise exclusivement l'algorithme de codage de Huffman pour compresser les données,
                                         sans utiliser les autres techniques de compression, ce qui peut être moins efficace
                                         sur certains types de données. */
  3. #define Z_RLE                  3  /* Stratégie de compression par encodage de longueur de série (Run-Length Encoding).
                                         Cette stratégie est adaptée aux données avec de longues séquences de valeurs répétées,
                                         comme les graphiques binaires, où les séquences sont remplacées par un compteur. */
  4. #define Z_FIXED                4  /* Stratégie de compression avec des tables de Huffman fixes. Cette méthode utilise
                                         une table de codage de Huffman pré-définie, sans adaptation aux données spécifiques,
                                         ce qui peut être plus rapide mais moins efficace pour certaines données. */
  5. #define Z_DEFAULT_STRATEGY     0  /* Stratégie de compression par défaut. Cette valeur permet à Zlib de choisir
                                         automatiquement la meilleure stratégie en fonction des données, offrant un bon compromis
                                         entre la vitesse et l'efficacité de la compression. */

Valeurs possibles du champ data_type pour deflate() :

  1. #define Z_BINARY   0        /* Type de fichier binaire. Cette option est utilisée pour indiquer que le fichier compressé
                                   contient des données binaires, c'est-à-dire des données qui ne doivent pas être modifiées
                                   lors de la compression (aucune conversion de fin de ligne). */
  2. #define Z_TEXT     1        /* Type de fichier texte. Cette option est utilisée pour indiquer que le fichier compressé
                                   contient des données texte, permettant à Zlib de convertir les fins de ligne pour la
                                   compatibilité avec différents systèmes (par exemple, conversion de CRLF à LF). */
  3. #define Z_ASCII    Z_TEXT   /* Type de fichier ASCII (identique à Z_TEXT). Pour des raisons de compatibilité
                                   avec les versions antérieures de Zlib (1.2.2 et précédentes), "Z_ASCII" est un alias pour "Z_TEXT". */
  4. #define Z_UNKNOWN  2        /* Type de fichier inconnu. Cette option est utilisée lorsque le type de fichier n'est pas spécifié
                                   ou inconnu. Zlib peut alors essayer de déterminer automatiquement le type de fichier. */

La méthode de compression deflate (la seule prise en charge dans cette version) :

  1. #define Z_DEFLATED 8

Pour initialiser zalloc, zfree, opaque :

  1. #define Z_NULL 0

Pour compatibilité avec les versions < 1.0.2 :

  1. #define zlib_version zlibVersion()


PARTAGER CETTE PAGE SUR
Dernière mise à jour : Vendredi, le 17 janvier 2025