【问题标题】:What is the difference between Console.WriteLine('single quote'); and Console.WriteLine("double quote");Console.WriteLine('single quote'); 有什么区别?和 Console.WriteLine("双引号");
【发布时间】:2013-03-01 23:31:06
【问题描述】:

为什么 Visual Studio 会抛出错误

Console.WriteLine('string with single quote');

而不是:

Console.WriteLine("string with double quote"); 

?

谢谢。

【问题讨论】:

    标签: c# .net console


    【解决方案1】:

    单引号 (') 用于 char 数据类型,它只能采用单个字符,因此名称,排除转义值,例如 '\n''\r' 等,它们仍然是编译时表示单个char

    双引号 ("),用于表示 UTF-16 编码字符串(每个字符 2 个字节 generally,而不是 ASCII,并且不是 .NET 的默认值 - UTF-16),但不能处理所有已知字符集 (UTF-8)。

    【讨论】:

    • 太笼统了,这是完全合法的:Char c = '\t';
    • @TimSchmelter 是的,不是的。您的示例仍会导致存储单个字符。 \t 是制表符的转义码。
    • 只是想指出一个字符文字不需要有单个字符,有一些转义序列。也许吹毛求疵;)
    【解决方案2】:

    Console.WriteLine('') 将接受字符文字。因此,当您尝试传递超过 1 个字符时,它会产生错误。

    虽然 Console.WriteLine("") 将接受可以包含单词的字符串。

    【讨论】:

      猜你喜欢
      • 2023-02-01
      • 1970-01-01
      • 2017-07-21
      • 1970-01-01
      • 2014-05-13
      • 2017-05-14
      • 2010-12-31
      • 2010-10-30
      相关资源
      最近更新 更多