C# Console.WriteLine(“单引号”)之间的区别是什么;和Console.WriteLine(“双引号”);
为什么VisualStudio在上抛出错误C# Console.WriteLine(“单引号”)之间的区别是什么;和Console.WriteLine(“双引号”);,c#,.net,console,C#,.net,Console,为什么VisualStudio在上抛出错误 Console.WriteLine('string with single quote'); 而不是在: Console.WriteLine("string with double quote"); ? 谢谢。单引号用于字符数据类型,该类型只能使用一个字符,因此得名,不包括转义值,如'\n'、'\r'等,这些值在编译时仍然表示一个字符 双引号用于表示UTF-16编码字符串,每个字符2个字节,不是ASCII,并且不是.NET的默认值-UTF-16,
Console.WriteLine('string with single quote');
而不是在:
Console.WriteLine("string with double quote");
?
谢谢。单引号用于字符数据类型,该类型只能使用一个字符,因此得名,不包括转义值,如'\n'、'\r'等,这些值在编译时仍然表示一个字符
双引号用于表示UTF-16编码字符串,每个字符2个字节,不是ASCII,并且不是.NET的默认值-UTF-16,但不能处理所有已知的字符集。单引号用于字符数据类型,该类型只能使用一个字符,因此名为“\n”、“r”等转义值除外。,它们在编译时仍然表示单个字符
双引号用于表示UTF-16编码字符串,每个字符2个字节,而不是ASCII,并且不是.NET的默认值-UTF-16,但不能处理所有已知字符集。Console.WriteLine将接受字符文字。因此,当您尝试传递超过1个字符时,它将生成一个错误
而Console.WriteLine将接受可以包含单词的字符串。Console.WriteLine将接受字符文本。因此,当您尝试传递超过1个字符时,它将生成一个错误
虽然Console.WriteLine将接受可以包含单词的字符串。过于泛化,这是完全合法的:Char c='\t'@TimSchmelter:是和否。您的示例仍然会存储单个字符。\t是制表符的转义码。只是想指出字符文字不需要有单个字符,有一些转义序列。也许是吹毛求疵;太笼统了,这是完全合法的:Char c='\t'@TimSchmelter:是和否。您的示例仍然会存储单个字符。\t是制表符的转义码。只是想指出字符文字不需要有单个字符,有一些转义序列。也许是吹毛求疵;