VB对应的等效C#代码

VB对应的等效C#代码,c#,vb.net,winforms,C#,Vb.net,Winforms,我正在把一些VB代码转换成C#。我现在用VB Dim LineSeparator As Char = Convert.ToChar(10) Dim DataSeparator As Char = Convert.ToChar(";") 我检查了Watch窗口中的值,可以看到类似的内容 Name Value Type LineSeparator ""c Char DataSeparator ";"c Char

我正在把一些VB代码转换成C#。我现在用
VB

Dim LineSeparator As Char = Convert.ToChar(10)
        Dim DataSeparator As Char = Convert.ToChar(";")
我检查了
Watch
窗口中的值,可以看到类似的内容

Name            Value   Type        

LineSeparator   ""c     Char

DataSeparator   ";"c    Char
我写了类似的
C#
语句

char LineSeparator = Convert.ToChar(10);
char DataSeparator = Convert.ToChar(";");
但是手表显示了不同的结果。像这样的

LineSeparator   10 '\n' char


DataSeparator   59 ';'  char

我在这里做错了什么?我是否需要在参数周围加上单引号

否结果是正确的,只是调试窗口显示C#和VB.NET之间某些常量值的方式不同而已

代码为10的字符是换行符(一个不可打印的字符),VB中的调试器在双引号之间不显示任何内容(但字符在那里)。在C#调试器中,这些不可打印的字符由转义前缀(\)表示,后跟为其中一些字符定义的一个字母


对于分号,问题是VB.NET对单个字符和字符串使用相同的引号。因此,他们添加了字母“c”,以表明这是一个字符值而不是字符串。相反,C#在字符常量周围使用单引号

No。如果结果正确,则显示C#和VB之间的值的方式不同。NET@Steve完美的在watch窗口中打印ASCII代码让我感到困惑:)有趣的事实-如果您在VS2010到VS2013中使用固定的数据提示(将鼠标悬停在变量上单击固定图标),因为Datatip将在VB中为您的
行分隔符
变量显示
“\n”c
。在VS2015中,它显示为
vbLf
:)