首页 > 技术文章 > 托管C++中System::String^ 转换为 char*

sinceret 2019-08-15 20:24 原文

https://docs.microsoft.com/en-us/cpp/dotnet/how-to-convert-system-string-to-standard-string?view=vs-2019

StringToHGlobalAnsi方法可以把托管 String^对象的内容复制到本机堆,

然后将它转换为 (ANSI) 格式。此方法会分配所需的本机堆内存:

//using namespace System::Runtime::InteropServices;
char* str2 = (char*)(void*)Marshal::StringToHGlobalAnsi(str);
printf(str2);
Marshal::FreeHGlobal( IntPtr(str2) );

 



推荐阅读