Добавление содержимого в динамическую строку
void sqlite3_str_appendf(sqlite3_str*, const char *zFormat, ...); void sqlite3_str_vappendf(sqlite3_str*, const char *zFormat, va_list); void sqlite3_str_append(sqlite3_str*, const char *zIn, int N); void sqlite3_str_appendall(sqlite3_str*, const char *zIn); void sqlite3_str_appendchar(sqlite3_str*, int N, char C); void sqlite3_str_reset(sqlite3_str*); void sqlite3_str_truncate(sqlite3_str*,int N);
Эти интерфейсы добавляют содержимое в объект sqlite3_str или удаляют его из объекта, полученного ранее с помощью sqlite3_str_new().
Интерфейсы sqlite3_str_appendf(X,F,...) и sqlite3_str_vappendf(X,F,V) используют встроенные функции printf SQLite для добавления форматированного текста в конец объекта sqlite3_str X.
Метод sqlite3_str_append(X,S,N) добавляет ровно N байтов из строки S в конец объекта sqlite3_str X. Значение N должно быть неотрицательным. Строка S должна содержать не менее N ненулевых байтов данных. Чтобы добавить строку с завершающим нулём целиком, используйте вместо этого метод sqlite3_str_appendall().
Метод sqlite3_str_appendall(X,S) добавляет всё содержимое строки S с завершающим нулём в конец объекта sqlite3_str X.
Метод sqlite3_str_appendchar(X,N,C) добавляет N копий однобайтового символа C в конец объекта sqlite3_str X. Этот метод можно использовать, например, для добавления отступов.
Метод sqlite3_str_reset(X) сбрасывает создаваемую строку внутри объекта sqlite3_str X, устанавливая её длину в ноль байтов.
Метод sqlite3_str_truncate(X,N) изменяет длину создаваемой строки, сокращая её до N байтов или меньше. Эта процедура ничего не делает, если N отрицательно или если длина строки уже не превышает N байтов.
Эти методы не возвращают код результата. Если возникает ошибка, сведения о ней сохраняются в объекте sqlite3_str и могут быть получены последующим вызовом sqlite3_str_errcode(X).
См. также списки объектов, констант и функций.
SQLite is in the Public Domain.
https://sqlite.org/c3ref/str_append.html