gpt4 book ai didi

c# - Java 字 rune 字到 C# 字 rune 字

转载 作者:搜寻专家 更新时间:2023-11-01 01:30:22 28 4
gpt4 key购买 nike

我正在维护一些 Java 代码,我目前正在将它们转换为 C#。

Java 代码是这样做的:

sendString(somedata + '\000');

在 C# 中,我正在尝试做同样的事情:

sendString(somedata + '\000');

但是在 '\000' 上,VS2010 告诉我“字 rune 字中的字符太多”。如何在 C# 中使用“\000”?我试图找出这个字符是什么,但它似乎是“”或某种换行符。

你知道这个问题吗?

谢谢!

最佳答案

'\0'在 C# 中会很好。

发生的事情是 C# 看到了 \0并将其转换为 ASCII 值为 0 的空字符;然后它又看到两个 0 s,在 字符 中是非法的(因为您使用的是单引号,而不是双引号)。空字符通常不可打印,这就是为什么当您尝试打印它时它看起来像一个空字符串。

您在 Java 中输入的是支持 octal 的字 rune 字数字。 C# 不支持字符 数字中的八进制文字,以努力减少编程错误。*

C# does supports Unicode literals形式 '\u0000'其中 0000是1-4位的十六进制数。

* 例如,在 PHP 中,如果您输入的数字前导零是有效的八进制数,它就会被翻译。如果它不是合法的八进制数,则无法正确翻译。 <? echo 017; echo ", "; echo 018; ?>输出 15, 1在我的机器上。

关于c# - Java 字 rune 字到 C# 字 rune 字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2753509/

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