首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C# -类型转换(数字到字符)是否基于ASCII值?

C# -类型转换(数字到字符)是否基于ASCII值?
EN

Stack Overflow用户
提问于 2017-12-14 06:02:42
回答 2查看 602关注 0票数 0

我是C#新手,我正在努力了解更多关于数据类型和转换的知识。我有以下控制台程序:

代码语言:javascript
复制
using System;

namespace First_lesson
{
    class Program
    {
        static void Main(string[] args)
        {
            char singleLetter = 'B';
            short num = 291;
            Console.WriteLine("{0} {1}", num, singleLetter);


            singleLetter = Convert.ToChar(num);
            Console.WriteLine(singleLetter);
            Console.WriteLine("{0} {1}", sizeof(short), sizeof(char));

        }
    }
}

我不明白为什么当我将num转换为char时,我会得到一个小写的g,而不是#的标签符号。

转换不是基于ASCII值吗?

EN

Stack Overflow用户

发布于 2017-12-14 06:12:02

char关键字用于声明System.Char结构的实例,.NET框架用于表示.NET字符。Char对象的值是16位数字(序数)值.

实际上,一个字符表示一个Unicode字符。小数中的35是#符号的表示

代码语言:javascript
复制
public static void Main()
{
    char singleLetter = 'B';
    short num = 35;
    Console.WriteLine("{0} {1}", num, singleLetter);

    singleLetter = Convert.ToChar(num);
    Console.WriteLine(singleLetter);
    Console.WriteLine("{0} {1}", sizeof(short), sizeof(char));
    Console.ReadLine();
}

试试这个:

代码语言:javascript
复制
short singleLetter = Convert.ToInt16('B');
Console.WriteLine(singleLetter);

B66十进制值,可以将页面用作Unicode表的引用。

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47806821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档