首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GNU Guile SCM to char*

GNU Guile SCM to char*
EN

Stack Overflow用户
提问于 2013-04-16 20:29:26
回答 1查看 274关注 0票数 2

我是FFI和GNU Guile的新手,我正在编写一个大量使用char*变量的库的绑定。下面是function中的代码,它包装了C函数:

代码语言:javascript
复制
static inline char*
scm_to_ascii_string(SCM string)
{
  return SCM_UNBNDP(SCM) ?  NULL
    : scm_to_stringn(string, NULL, "ascii", SCM_FAILED_CONVERSION_ERROR);
}

SCM_DEFINE(func, "func", ...)
{
  ...
  char *server_pass = scm_to_ascii_string(scm_server_pass);
  char *username = scm_to_ascii_string(scm_username);
  char *realname = scm_to_ascii_string(scm_realname);
}

问题是,任何对转换函数的调用都会抛出错误,从而导致内存泄漏。我能做些什么呢?

EN

回答 1

Stack Overflow用户

发布于 2013-05-15 01:04:58

您可以将输出部分设置为参数,例如:

void scm_to_ascii_string(SCM string,char* &out);

编辑:

我猜你指的是C端有哪些异常处理方法,我想在C编程的两个章节之一的手册中可能会有一些关于这方面的内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16037102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档