Clearsilver 模板系统 - cs_render() 和 CSOUTFUNC 问题

标签 c template-engine clearsilver

从我的代码中摘录:

NEOERR*
func(void *,char *);
...
char* buf;
buf = (char*) malloc(1024);
HDF* hdf;
CSPARSE* cs;
hdf_init(&hdf);
hdf_set_value(hdf, "name", "foo"); 
cs_init(&cs, hdf);
strcpy(buf, "This is <?cs var:name ?>");
cs_parse_string(cs, buf, 1024);
cs_render(cs, NULL , func);
...
NEOERR*
func(void *b, char* a)
{
    printf("%s", a);
}

输出是:

This is<space>

如果我使用

strcpy(buf, "<?cs var:name ?>");

那么输出是

foo

如何将模板命令与静态文本结合使用?我的 CSOUTFUNC 函数有什么问题?

提前非常感谢

最佳答案

问题在于缺失

return (STATUS_OK);

在函数中

NEOERR*
func(void *,char *);

已解决。

关于Clearsilver 模板系统 - cs_render() 和 CSOUTFUNC 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6362894/

相关文章:

javascript - 转义clearsilver变量以用作href中的javascript参数

c++ - 如何获取字符串的一部分

c - 优化缓存行的二维数组索引

grails - Grails:对于gsp View 布局,sitemesh的其他替代方法是什么?

android - C 宏编译错误(AOSP : external/clearsilver/util/neo_err. h)

c - 如何清除 UNIX 系统上 tty 输入队列中的未读数据?

c++ - 我可以使用 wstring 来读取、解析和发出 utf-8 吗?

java - 带有 java 编译器的客户端模板语言(DRY 模板)

用于移动 Web 应用程序的 JavaScript 模板引擎