• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
梦想的天空分外蓝!
展望未来 超越梦想
博客园    首页       联系   管理    订阅  订阅

System::String^ / std::string / char * 间的转换(部分)

                              System::String^    to std::string 

                          void MarshalString ( System::String^ s, std::string& os )

 {   
 using namespace System::Runtime::InteropServices;  
 const char* chars = (const char*)(Marshal::StringToHGlobalAnsi(s)).ToPointer(); 
 os = chars; 
 Marshal::FreeHGlobal(IntPtr((void*)chars));
 }
 
                         std::string to System::String^
                         string s="aaaaaaaaaaa";
                         String^ str=gcnew String(s.c_str());
 

                            char *   to  System::String^

                           char *ch="this is char pointer"; 

  String^ str=gcnew String(ch);//  或 :System::Runtime::InteropServices::Marshal::PtrToStringAnsi((IntPtr)ch);

                          

                          std::string to char * 

                           string str="hello";

                           char * ch;

                            ch=str; 

                             

  

                                

posted @ 2012-10-05 01:20  Kiven  阅读(1163)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3