无需使用转义序列。对于'在 C# 中?

发布于 2024-10-13 21:00:25 字数 162 浏览 3 评论 0原文

在 MSDN 上,我可以读到 \'' 字符的转义序列。但是我可以在没有转义序列的字符串中使用它,如下所示:

Console.WriteLine("Press 'X' ");

怎么可能?

On MSDN I can read that \' is escape sequence for ' char. However I am able to use it in string without escape sequence like this:

Console.WriteLine("Press 'X' ");

How it is possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

隔纱相望 2024-10-20 21:00:25

但是如何将其写为 char 呢?

char c = '\'';

But how would you write it as a char?

char c = '\'';
厌倦 2024-10-20 21:00:25

char< /a> (单个字符文字)是与 string(多字符文字)。

在 C# 中,char 声明为:

var c = 'c';

string 声明为:

var s = "asdf";

如您所见,需要使用单引号 (')转义以声明包含单引号的 char

var c = '\''; 

char (a single character literal) is a different data type than string (a multi character literal).

In C# a char is declared as:

var c = 'c';

whereas a string is declared as:

var s = "asdf";

As you can see the single quote (') would need to be escaped to declare a char containing the single quote:

var c = '\''; 
幼儿园老大 2024-10-20 21:00:25

字符文字需要 \' 筛选。原因是 ' 可以解释为文字边界字符。对于字符串来说这是没有意义的,因为没有什么可以混淆的。在 strings 中,\" 又有意义。

\' screening is needed for char literals. Reason is that ' can be interpreted as literal boundary character. For strings it is meaningless because there is nothing to confuse with. In strings in turn \" makes sense.

柠檬 2024-10-20 21:00:25

它表示您必须对 char 数据类型进行转义 ' 。

char c = ''';  // compiler throws error
char c = '\''; // valid

It says that you have to escape ' for a char data type.

char c = ''';  // compiler throws error
char c = '\''; // valid
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文