README.md
1Zstandard library : usage examples
2==================================
3
4- [Simple compression](simple_compression.c) :
5 Compress a single file.
6 Introduces usage of : `ZSTD_compress()`
7
8- [Simple decompression](simple_decompression.c) :
9 Decompress a single file.
10 Only compatible with simple compression.
11 Result remains in memory.
12 Introduces usage of : `ZSTD_decompress()`
13
14- [Multiple simple compression](multiple_simple_compression.c) :
15 Compress multiple files (in simple mode) in a single command line.
16 Demonstrates memory preservation technique that
17 minimizes malloc()/free() calls by re-using existing resources.
18 Introduces usage of : `ZSTD_compressCCtx()`
19
20- [Streaming memory usage](streaming_memory_usage.c) :
21 Provides amount of memory used by streaming context.
22 Introduces usage of : `ZSTD_sizeof_CStream()`
23
24- [Streaming compression](streaming_compression.c) :
25 Compress a single file.
26 Introduces usage of : `ZSTD_compressStream()`
27
28- [Multiple Streaming compression](multiple_streaming_compression.c) :
29 Compress multiple files (in streaming mode) in a single command line.
30 Introduces memory usage preservation technique,
31 reducing impact of malloc()/free() and memset() by re-using existing resources.
32
33- [Streaming decompression](streaming_decompression.c) :
34 Decompress a single file compressed by zstd.
35 Compatible with both simple and streaming compression.
36 Result is sent to stdout.
37 Introduces usage of : `ZSTD_decompressStream()`
38
39- [Dictionary compression](dictionary_compression.c) :
40 Compress multiple files using the same dictionary.
41 Introduces usage of : `ZSTD_createCDict()` and `ZSTD_compress_usingCDict()`
42
43- [Dictionary decompression](dictionary_decompression.c) :
44 Decompress multiple files using the same dictionary.
45 Result remains in memory.
46 Introduces usage of : `ZSTD_createDDict()` and `ZSTD_decompress_usingDDict()`
47