这是一个针对 C#(或可能是 VB.net)的 .NET 问题,但我试图找出以下声明之间的区别:
string hello = "hello";
对比
string hello_alias = @"hello";
在控制台上打印出来没有区别,长度属性是一样的。
最佳答案
它将字符串标记为 verbatim string literal - 字符串中通常被解释为 escape sequence 的任何内容被忽略。
所以 "C:\\Users\\Rich"
与 @"C:\Users\Rich"
相同
有一个异常(exception):双引号需要一个转义序列。要转义双引号,您需要将两个双引号放在一行中。例如,@""""
的计算结果为 "
。
关于c# - C#中字符串前面的@是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/556133/