gpt4 book ai didi

c# - 不安全的字符串指针语句

转载 作者:太空狗 更新时间:2023-10-29 17:44:54 26 4
gpt4 key购买 nike

据我了解,根据MSDN C# 固定语句应该像这样工作:

fixed (char* p = str) ... // equivalent to p = &str[0]

那么,为什么我不能这样做?

    const string str = "1234";
fixed (char* c = &str[0])
{
/// .....
}

例如,如何获得指向 str[1] 的指针?

最佳答案

由于获取指向后面元素的指针直接适用于数组,但不适用于字符串,所以似乎唯一的原因是 MS 没有实现它。按照数组的语义,可以很容易地设计它。

但是您可以轻松地计算出另一个指向其他数组元素的指针。所以这在实践中不是一个大问题:

fixed (char* p = str)
{
char* p1 = p+1;
}

关于c# - 不安全的字符串指针语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15919065/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com