相关疑难解决方法(0)

使用free()释放C函数中的字符串(在Ada中分配)

我正在开发一个C-Ada绑定应用程序,我在Ada端使用分配一个新字符串Interfaces.C.Strings.New_String().

Interfaces.C.Strings已经有一个过程Free()来为字符串释放内存.因为我需要使用Interfaces.C.Strings.Chars_Ptr以下命令将此字符串传递给C函数:

  1. 如果我使用free()函数(在stdlib.h中声明)为C端的字符串释放内存,这样可以吗?

  2. 如果我从C端释放内存,这样安全吗?

  3. 或者我应该使用Interfaces.C.Strings.Free()Ada方面的功能更好地释放它?

c string ada

3
推荐指数
1
解决办法
257
查看次数

标签 统计

ada ×1

c ×1

string ×1