提交 23dafa47 编写于 作者: K Kyle Chisholm 提交者: Max Bruckner

added Print function call for pre-allocated buffer

上级 d0a9f468
......@@ -886,6 +886,16 @@ char *cJSON_PrintBuffered(const cJSON *item, int prebuffer, cjbool fmt)
return print_value(item, 0, fmt, &p);
}
int cJSON_PrintMallocedBuffer(cJSON *item,char *buf,const int len, cjbool fmt)
{
char *out;
printbuffer p;
p.buffer = buf;
p.length = len;
p.offset = 0;
out = print_value(item,0,fmt,&p);
return (out != buf ? -1 : 0);
}
/* Parser core - when encountering text, process appropriately. */
static const char *parse_value(cJSON *item, const char *value, const char **ep)
......
......@@ -83,6 +83,8 @@ extern char *cJSON_Print(const cJSON *item);
extern char *cJSON_PrintUnformatted(const cJSON *item);
/* Render a cJSON entity to text using a buffered strategy. prebuffer is a guess at the final size. guessing well reduces reallocation. fmt=0 gives unformatted, =1 gives formatted */
extern char *cJSON_PrintBuffered(const cJSON *item, int prebuffer, int fmt);
/* Render a cJSON entity to text using a buffer already allocated in memory with length buf_len */
extern int cJSON_PrintMallocedBuffer(cJSON *item, char *buf, const int len, int fmt);
/* Delete a cJSON entity and all subentities. */
extern void cJSON_Delete(cJSON *c);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册