Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
本文中提到了 System::String 和 const char* 之间的转换。
我的问题是:是否可以使用这种构造(marshal_context)从 System::String 转换为 char*(注意缺少 const)?
如果不是这个问题的推荐解决方案是什么?
我是否被迫使用较旧的 Marshal::StringToHGlobalAnsi?
评论中还有其他问题。
您可以使用 Strings 提供的方法来获取底层的 c 样式字符串c_str()。它是const,但您可以将其复制到您自己的变量char*中。
c_str()
const
char*
只需分配一个足够大的缓冲区,就像使用malloc,然后strncpy进入它。有一百种不同的方法可以做到这一点,但归根结底是保留内存,复制字符串,玩得开心。
malloc
strncpy