转义符"\""

一、转义符的表示:\

二、转义符的作用:

下面我们看两个例子:

例1:输出ab

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = "ab";  
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  
}  


例2:输出"ab"

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = "\"ab\"";  
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  
}  


为什么输出"ab"要用转义符"\""?

因为编译器默认是遇到"开始字符串,再遇到"是结束字符串,但是如果遇到前面有\的"就是不把它当成有字符串起始意义的"。

 

例3:输出:a\b

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = "a\\b";          
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  
}  


例4:输出:a

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = "a\b";          
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  
}  


例5,输出:\b

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = "\\b";          
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  
}  


 

例6,输出:c:\temp\1.jpg

[csharp]  view plain copy print ?
  1. static void Main(string[] args)  
  2.         {  
  3.             string s = "c:\\temp\\1.jpg";          
  4.             Console.WriteLine(s);  
  5.             Console.ReadKey();  
  6.         }  


 (二)转义符的作用:换行。

例7,两行输出:

a

b

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = "a\nb";        //n:newline  
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  


注意:“\n”在这里相当于换行的作用。

 

例8,输出:\\

[csharp] view plaincopyprint?
static void Main(string[] args)  
        {  
            string s = "\\\\";          
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  


 例9,输出:\\\\

csharp] view plaincopyprint?
static void Main(string[] args)  
        {  
            string s = @"\\\\";        //@表示字符串的\不当成转义符   
            Console.WriteLine(s);  
            Console.ReadKey();  

对比例8和例9得出:如果\前加@,那么\不当转义符。

 

注意1:@只针对转义符有意义,对""没有意义。

如例6(输出:c:\temp\1.jpg)的另一种表示方法:

[csharp] view plaincopyprint?
namespace ConsoleApplication2  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            string s = @"c:\temp\1.jpg";          
            Console.WriteLine(s);  
            Console.ReadKey();  
        }  
    }  
}  



注意2:转义符只针对在代码中直接写出的字符串,对于程序中读取出来没有这个问题(如例10)。

例10:

    String str=Console.ReadLine();

    Console.WriteLine(Str);

    用户输入a\nb,输出的仍然是a\nb。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值