C++/CLI的托管字符串std字符串和c字符串的转换

这篇博客探讨了在C++/CLI环境中,如何进行std::string, System::String与cstring之间的转换。通过cstring作为中转,介绍了std::string到System::String的间接转换,以及System::String到std::string和std::wstring的转换方法。文章引用了微软官方文档和Stack Overflow上的资源,并提供了作者的个人博客链接以获取更多更新。" 105677902,9162829,CSS样式设置与引用样式表详解,"['html', 'css', '前端开发', '网页设计', 'CSS3']
摘要由CSDN通过智能技术生成

最近在搞C++/CLI,发现经常需要涉及字符串之间的传递和转换,因此记录下。


在C++/CLI中,我们可以接触到三种字符串std::string,System::string,cstring。这里我们分别称之为标准字符串,托管字符串和c语言字符串。

std::string 和 cstring

cstring是一个char数组,在string.h 中直接定义了c_str方法完成std::string 到 cstring的转换

这里获得的是一个char的指针常量,指向cstring数组

在这里插入图片描述

与此同时,string.h还定义了string构造函数从cstring构造std::string

在这里插入图片描述

System::String 和 cstring

由于c#中safe代码区域不会使用指针,所以cstring的表现为char数组。

System::String 中定义了ToCharArray方法可以获得char数组

在这里插入图片描述

同样可以使用System::String 的构造函数从

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值