string s=@"This/Is/My/School.";
Respond.write(s);
的结果是什么?
这是我去德瑞面试的时候的一道笔试题,之前没有遇见过这样的写法啊

解决方案 »

  1.   

    就是
    This/Is/My/School. 
    啊,有什么问题啊
      

  2.   

    我才是你记错了吧
    是不是 
    string s = @"This\Is\My\School.";
    Response.Write(s);有@的话,“\”就是本身,而不会认为是转义字符
      

  3.   

    恩是我记错了,嘿嘿,谢谢指出哈,在博客园里看到了C#中关于@的用法,确实之前都没有那么注意过呢
    C#中@的用法 
     1. 加在字符串前面,字符串中的 \ 失去转义符的作用,直接写字符串而不需要考虑转义字符 C#代码 
    string path = @"C:\Windows\"; // 如果不加 @,编译会提示无法识别的转义序列   
    // 如果不加 @,可以写成如下   
    string path2 = "C:\\Windows\\";  string path = @"C:\Windows\"; // 如果不加 @,编译会提示无法识别的转义序列
    // 如果不加 @,可以写成如下
    string path2 = "C:\\Windows\\";  2. 加在字符串前面,字符串中的 " 要用 "" 表示    C#代码 
    string str = @"aaa=""bbb""";   
    // 不加 @,可以写成   
    string str2 = "aaa=\"bbb\"";  string str = @"aaa=""bbb""";
    // 不加 @,可以写成
    string str2 = "aaa=\"bbb\"";  3 加在字符串前面,换行空格都保存着,方便阅读代码 C#代码 
    string insert = @"   
    insert into Users   
    (   
    UserID,   
    Username,   
    Email   
    ) values   
    (   
    @UserID,   
    @Username,   
    @Email   
    )";  string insert = @"
    insert into Users
    (
    UserID,
    Username,
    Email
    ) values
    (
    @UserID,
    @Username,
    @Email
    )";   4 用关键字做变量时在关键字前面加@   C#代码 
    string @operator = "+";   
    string @class = "分类一";   
    Console.WriteLine(@operator);   
    Console.WriteLine(@class);  string @operator = "+";
    string @class = "分类一";
    Console.WriteLine(@operator);
    Console.WriteLine(@class);
     
      5 作为sql语句里的一个“标签”,声明此处需要插入一个参数  C#代码 
    string delete = "delete from Categery where CategoryID=@CategoryID";   
    SqlConnection connection = new SqlConnection("connectionString");   
    SqlCommand command = new SqlCommand(delete, connection);   
    command.Parameters.Add("@CategoryID", SqlDbType.BigInt);  
      

  4.   

    Respond.write(s);//输出 This\Is\My\School.