char怎么转成char*我这么写的:unsafe......
string read = “123”;
char* data = read[0];
第二行报错,提示无法将char隐士转为char*请问怎么转??
string read = “123”;
char* data = read[0];
第二行报错,提示无法将char隐士转为char*请问怎么转??
解决方案 »
- C#操作数据库的方式那种好一点【DBHelper相关】
- 关于iis配置
- 用C#解析erwin和powerdesigner的xml文件。将文件中的表信息,字段信息,主外键信息,关联等读出来
- 基类中的实现,作为接口实现
- combobox.selectedItem 或 combobox.selectedItem
- 调用类库方法的问题
- usb转串口 跟另外一个串口通信还能直接用串口类进行操作吗?
- 在winform中使用了linklabel,用于显示网址和电子邮件地址,如何实现单击后启动ie和outlook express
- datalist或gridvie如何实现1234分页
- IssueVision Smart Client客户端采用Access2000保存数据的问题?
- Winform中嵌入网页
- 怎么样设计一个在1到10中的计数器,当数为1时值为一,以此类推
改成
unsafe char* data = read[0];
char c = str[0];
char* p = null;
p = &c;
Console.WriteLine(*p);
private unsafe void button1_Click(object sender, EventArgs e)
{
string read1 = textBox1.Text.ToString();
char* data = read1[0];//////////这里报错:无法将char隐式转为为char*
string read2 = textBox2.Text.ToString();
char length = read2[0];
int crcjieguo = CRC16(data, length);
textBox3.Text = crcjieguo.ToString();
}
fixed(char* data = read[0])
{}
fixed(char* data = &read[0])
{}
private unsafe void button1_Click(object sender, EventArgs e)
{
string read1 = textBox1.Text.ToString();
char* data = read1[0];/////////这里报错:无法将char隐士转为为char*
string read2 = textBox2.Text.ToString();
char length = read2[0];
int crcjieguo = CRC16(data, length);
textBox3.Text = crcjieguo.ToString();
}
这样才是真正的地址
fixed(char* p = read)
{}
LZ是要read[0]里面存储的那个地址,所以推荐这个答案
string s1 = "123";
string s2 = "123";
string s3 = s2;
fixed (char* p = s1)
*p = '5';
Console.WriteLine(s1);
Console.WriteLine(s2);
Console.WriteLine(s3);这个例子如果搞明白为什么修改了s1之后,s2、s3也会变成523,那么C#中字符串字符的指针就容易搞清楚。