C#中字符串前的@符号是什么意思?
大家好!我开始学习C#,在别人的代码中遇到了一个奇怪的构造。例如:
```csharp
string path = @"C:\Users\Admin\Documents\file.txt";
string text = @"Hello,
world!";
```
我看到字符串前面有一个@符号。它是做什么的?没有它代码就不能运行吗?我尝试从第一行去掉@,Visual Studio报错说“unrecognized escape sequence”。但在第二行,如果去掉@,代码似乎可以运行,但字符串显示在一行,而不是两行。
请解释一下这个符号的用途以及何时使用它。我觉得这像是一种魔法,阻碍了我理解C#中字符串的工作方式。提前感谢!
P.S. 我还看到@用在变量名前面,比如 `string @class = "test";`。这和字符串前的@是一回事吗?
<<>>
C#中字符串前的@是什么?
字符串前的@符号创建了一个逐字字符串字面量(verbatim string literal)。这是一种特殊语法,它