我的C#代码使用托管C++包装器。为了创建这个包装类型的新对象,我需要将String的转换为Sbyte *的。一些StackOverflow.com帖子讨论了如何将字符串转换为字节[],以及将字节[]转换为字节[],但不是将字符串转换为字节*。C#:将字符串转换为Sbyte *
msdn.social.com关于如何将字节数组转换为字符串提供建议:
> // convert String to Sbyte*
> string str = "The quick brown, fox jumped over the gentleman.";
>
> System.Text.ASCIIEncoding encoding = new
> System.Text.ASCIIEncoding();
>
> Byte[] bytes = encoding.GetBytes(str);
然而,“字节”类型为sbyte不*。我下面尝试将字节转换到sbyte *失败:
1. Convert.ToSbyte(bytes); 2. cast: (sbyte*) bytes;
请告诉我关于如何将C#字符串转换为为sbyte *。
此外,请介绍引入sbyte *引起的任何副作用,我认为这是不安全的代码。
感谢, 凯文
谢谢,Cipi。我会去尝试一下。 – 2011-04-14 20:14:55
@凯文:而?它有用吗? – Cipi 2011-04-21 09:28:17
@Cipi工作。 – sdm350 2012-10-19 18:21:45