What's the total number of "c"s in:
Q: Декомпрессор gzip на C++, библиотека zlib.h Доброго времени суток!
Не так давно начал осваивать С++ и столкнулся с проблемой. Необходимо разархивировать довольно большое число файлов *.GZ. В связи с этим облазил интернет, нашел библиотеку zlib.h, установил её через configure. И после компиляции, а именно g++ file.cpp -o file -lz получил первые результаты. На самом деле на это у меня ушёл чуть ли не весь день и сейчас задача разархивировать хотя бы 1 файл совсем поставила меня в тупик.
Дело в том, что большинство примеров, которые приводятся на просторах интернета не работали, а один из них выдавал ошибку, мол формат не верный. Это странно, в конце концов эти файлы были получены непосредственно с noaa, поэтому в правильности формата я уверен на все 100%. Например в баше через gunzip они распаковываются на ура. 
Собственно нашёл небольшой, в сравнении с остальными, кусочек кода, но он работал. Вот только не так, как мне хотелось бы. Файл действительно стал заполняться информацией, но вместо ожидаемых 2.2 мб, я получал на выходе 14,2 Кб. Так как в языке я совсем не силен, то прошу указать мне, в чем же моя ошибка и как мне получить желаемый результат? Внутри архива находится бинарный файл.
#include "zlib.h"
#include <stdio.h>
#include <string.h>
#include <assert.h>
#include <fcntl.h>

const static int KILOB = 16384;

using namespace std;

int main(int argc, char **argv)
{
 char cb[KILOB];

 string arch = "/home/cat/Projects/selection_l1b_format_noaa/TEMP/NSS.AMAX.NK.D11172.S2050.E2244.B6813941.GC.gz";
 FILE *outfile = fopen("/home/cat/Projects/selection_l1b_format_noaa/TEMP/AMAX.GC", "wb");

 gzFile gfile = gzopen(arch.c_str(), "rb");

 int len = 0;
 int count = 0;

 do
 {
    len = gzread(gfile, cb, KILOB);
    if (len < KILOB)
        cb[len] = 0;
    count++;
    cout<<"len="<<len<< "   # "<<count <<endl;
    fprintf(outfile, "%s", cb);
 } while (len == KILOB);

fclose(outfile);
gzclose(gfile);
}

Если это имеет значение,то моя система Linux Mint 19.1 Код пишу в VSCode, компилятор gcc. И судя по всему я не пользуюсь Qt.

user
The passage contains thirty-nine "c"s.
assistant