C# 高性能字符串 fixed string

2022-02-28  乐帮网

c#

在C#中string类的索引器是只读的,只能通过索引器去访问string中指定位置上的字符,而不能通过它来改写指定位置上的字符。

这里介绍一种方法直接改写string中的字符,而不是通过string类提供的方法。这里需要用到fixed语句,关于fixed关键字的说明和使用可以参考msdn fixed 语句。在了解了fixed关键字的作用之后,我们可以继续进行下面的代码了

static void Main(string[] args)
        {
            string str = "Hello world";
            unsafe
            {
                fixed (char* p = str)
                {
                    p[2] = 'k';
                    Console.WriteLine(str);
                }
            }
        }
 

编译运行这段代码时需要启用“Allow unsafe code”编译选项,编译后运行.exe文件会输出下面的字符串:这个选项的修改地方在VS中右键项目,属性里 就可以找到。

"Heklo world"

https://blog.csdn.net/feellow/article/details/4646367

公众号二维码

关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com

庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。

欧阳修

付款二维码

如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力