当我将一个C#string括在“中”时,它意味着什么&引用;?
可能重复:当我将一个C#string括在“中”时,它意味着什么&引用;?,c#,.net,string,C#,.net,String,可能重复: 对不起,我在谷歌上找不到这个。我猜当我进行搜索时,它可能不接受我的搜索字符串 有人能告诉我这在C中是什么意思吗# @的意思是什么?它是一个。这基本上意味着它将使用除“”以外的任何字符,包括新行。要写出“,请使用”,,这意味着它是一个文本字符串。 没有它,任何包含A的字符串都会考虑下一个字符为特殊字符,例如新行的\n。前面有一个@,它将按字面意思处理\ 在您给出的示例中,输出没有差异 引用的优点是不处理转义序列,, 这使得编写一个完全限定的文件变得很容易 姓名: 这意味着双引号内的字
对不起,我在谷歌上找不到这个。我猜当我进行搜索时,它可能不接受我的搜索字符串 有人能告诉我这在C中是什么意思吗#
@
的意思是什么?它是一个。这基本上意味着它将使用除“
”以外的任何字符,包括新行。要写出“
,请使用”
,,这意味着它是一个文本字符串。
没有它,任何包含A的字符串都会考虑下一个字符为特殊字符,例如新行的\n。前面有一个@,它将按字面意思处理\
在您给出的示例中,输出没有差异
引用的优点是不处理转义序列,,
这使得编写一个完全限定的文件变得很容易
姓名:
这意味着双引号内的字符应按原样解释 您可以看到反斜杠被视为字符,而不是字符 使用@时的转义序列。C#编译器还允许您 在逐字逐句中使用真正的换行符。您必须对报价单进行编码 用双引号标记 请看下面的例子 C#支持两种形式的字符串文字:常规字符串文字和逐字字符串文字
- 常规字符串文字由零个或多个包含在内的字符组成 在双引号中,如在“hello”中,可能包括两个简单的转义 序列(例如\t用于制表符)和十六进制以及 Unicode转义序列
- 逐字字符串文字由@字符后跟 双引号字符、零个或多个字符和结束符 双引号字符。一个简单的例子是“你好”。一字不差 字符串文字,分隔符之间的字符将被解释 逐字逐句,唯一的例外是引用转义序列。在里面 特殊的简单转义序列以及十六进制和Unicode 转义序列不以逐字字符串文字处理。A. 逐字字符串文字可能跨越多行
string a = "hello, world"; // hello, world
string b = @"hello, world"; // hello, world
string c = "hello \t world"; // hello world
string d = @"hello \t world"; // hello \t world
string e = "Joe said \"Hello\" to me"; // Joe said "Hello" to me
string f = @"Joe said ""Hello"" to me"; // Joe said "Hello" to me
string g = "\\\\server\\share\\file.txt"; // \\server\share\file.txt
string h = @"\\server\share\file.txt"; // \\server\share\file.txt
string i = "one\r\ntwo\r\nthree";
string j = @"one
two
three";
参考链接:
@"c:\Docs\Source\a.txt" // rather than "c:\\Docs\\Source\\a.txt"
string fileLocation = "C:\\CSharpProjects";
string fileLocation = @"C:\CSharpProjects";
string a = "hello, world"; // hello, world
string b = @"hello, world"; // hello, world
string c = "hello \t world"; // hello world
string d = @"hello \t world"; // hello \t world
string e = "Joe said \"Hello\" to me"; // Joe said "Hello" to me
string f = @"Joe said ""Hello"" to me"; // Joe said "Hello" to me
string g = "\\\\server\\share\\file.txt"; // \\server\share\file.txt
string h = @"\\server\share\file.txt"; // \\server\share\file.txt
string i = "one\r\ntwo\r\nthree";
string j = @"one
two
three";