我正在开发一个C-Ada绑定应用程序,我在Ada端使用分配一个新字符串Interfaces.C.Strings.New_String().
Interfaces.C.Strings已经有一个过程Free()来为字符串释放内存.因为我需要使用Interfaces.C.Strings.Chars_Ptr以下命令将此字符串传递给C函数:
如果我使用free()函数(在stdlib.h中声明)为C端的字符串释放内存,这样可以吗?
如果我从C端释放内存,这样安全吗?
或者我应该使用Interfaces.C.Strings.Free()Ada方面的功能更好地释放它?