Сложность реализации правила 128 C

Код, связанный с кодировкой текста:

const char* toCode128C( const char* texto ) {

int tamanhoTexto = strlen( texto );
int tamanhoComando = strlen( "{C" ) + tamanhoTexto;

char* printerCodBarras = new char[ tamanhoComando ];
memcpy( printerCodBarras, "{C", tamanhoComando );

for ( int i = 0; i < tamanhoTexto; i += 2 )  {
int num = QString( texto ).mid( i, 2 ).toInt();
QString vl = QString( static_cast<char>( num ) );

strncat( printerCodBarras, vl.toStdString().c_str(), 1 );
}

return printerCodBarras;

}

Кодирование происходит успешно, за исключением случаев, когда оно содержит «00», например, код 59900001, преобразование происходит от двух символов до двух символов, или возникает ошибка при кодировании значения «00», в результате чего (00) не печатается.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …