小智 5
请注意,它char*是指向单个字符串或多个字符(字符数组)string*的指针,而是指向单个字符串对象的单个或多个(数组)的指针.但是,C#不支持指向托管类型的指针(例如字符串)
例子:
unsafe void f()
{
char ch = '3';
char* cPtr = &ch;
*cPtr = '4'; // ch == '4'
fixed (char* ccPtr = new char[30])
{
*(ccPtr + 15) = '4'; // arr[15] == '4'
}
string* ptr; // error: cannot declare a pointer to managed type
fixed (char* pptr = new string(new char[] { 'a', 'b', 'c' }))
{
pptr[2] = 'd';
}
}
Run Code Online (Sandbox Code Playgroud)