精华内容
下载资源
问答
  • C#数据类型.NET框架数据类型说明boolSystem.Boolean逻辑值,true或者false,默认值为falsebyteSystem.Byte无符号的字节,所存储的值的范围是0~255,默认值为0sbyteSystem.SByte带符号的字节,所存储的值的范围是-128...

    C#数据类型

    .NET框架数据类型

    说 明

    bool

    System.Boolean

    逻辑值,true或者false,默认值为false

    byte

    System.Byte

    无符号的字节,所存储的值的范围是0~255,默认值为0

    sbyte

    System.SByte

    带符号的字节,所存储的值的范围是-128~127,默认值为0

    char

    System.Char

    无符号的16位Unicode字符,默认值为’/0’

    decimal

    System.Decimal

    不遵守四舍五入规则的十进制数,通常用于财务方面的计算,默认值为0.0m

    double

    System.Double

    双精度的浮点类型,默认值为0.0d

    float

    System.Single

    单精度的浮点类型,默认值为0.0f

    int

    System.Int32

    带符号的32位整型,默认值为0

    uint

    System.UInt32

    无符号的32位整型,默认值为0

    long

    System.Int64

    带符号的64位整型,默认值为0

    ulong

    System.UInt64

    无符号的64位整型,默认值为0

    object

    System.Object

    指向类实例的引用,默认值为null

    short

    System.Int16

    带符号的16位整型,默认值为0

    ushort

    System.UInt16

    无符号的16位整型,默认值为0

    string

    System.String

    指向字符串对象的引用,默认值为null

    C语言中 float、double、long double精度、数值范围

    IEEE754浮点数的表示方法。C语言里对float类型数据的表示范围为-3.4*10^38~+3.4*10^38。double为-1.7*10^-308~1.7*10^308,long double为-1.2*10^-4932~1.2*10^4932.

    类型

    比特(位)数

    有效数字

    数值范围

    float

    32

    6~7

    -3.4*10^38~+3.4*10^38

    double

    64

    15~16

    -1.7*10^-308~1.7*10^308

    long

    double

    128

    18~19

    -1.2*10^-4932~1.2*10^4932

    decimal

    128

    28~29

    ±1.0*10^28 ~ ±7.9*10^28

    基础类型描述:

    byte: 八位整数 -128——127,可用来节省内存的使用。

    short: 16位整数 -32768——32,767,也比较省内存。

    int: 32位整数 -2,147,483,648——2,147,483,647,一般来说整数都够用了

    long: 64位整数 -9,223,372,036,854,775,808—— 9,223,372,036,854,775,807,一般不需要用

    float: 32位浮点,如果浮点需要节省内存用这个。

    Double: 64位浮点,一般非整数浮点可用这个。

    究竟如何计算该范围,分析如下:

    对于单精度浮点数(float)来说,符号位一位,指数位8位,尾数23位。指数能够表示的指数范围为-128~127。尾数为23位。

    float和double的精度是由尾数的位数来决定的。浮点数在内存中是按科学计数法来存储的,其整数部分始终是一个

    隐含着的“1”,由于它是不变的,故不能对精度造成影响。float:2^23 =

    8388608,一共七位,这意味着最多能有7位有效数字,但绝对能保证的为6位,也即float的精度为6~7位有效数字;double:2^52 =

    4503599627370496,一共16位,同理,double的精度为15~16位。

    其中负指数决定了浮点数所能表达的绝对值最小的非零数;而正指数决定了浮点数所能表达的绝对值最大的数,也即决定了浮点数的取值范围。float的范围为-2^128 ~

    +2^128,也即-3.40E+38 ~

    +3.40E+38;double的范围为-2^1024 ~

    +2^1024,也即-1.79E+308

    ~+1.79E+308。

    以float为例,如下表:

    符号

    尾数

    指数

    1

    23

    8

    数符(+-)

    小数部分(决定精度)

    -127~128 指数(决定范围)

    例如:

    +1.1111111111111111111111*2^127(小数点后面23个1,由于尾数的范围1~2,其最高位总为1,故只需存取小数部分,所以小数为是23位1),约等于2*2^127=3.4*10^38。为3.4*10^38负数亦然。

    Double的计算与此类似,double的符号位为63位,指数为62~52位,共11位。表示的范围为-1024~1023。尾数为51~0。表示的

    范围为+1.1111111111111111..11111*2^1023(小数点后面52个1)为1.7*10^308。负数亦然。

    mysql & java:

    类型名称

    显示长度

    数据库类型

    JAVA类型

    JDBC类型索引(int)

    VARCHAR

    L+N

    VARCHAR

    java.lang.String

    12

    CHAR

    N

    CHAR

    java.lang.String

    1

    BLOB

    L+N

    BLOB

    java.lang.byte[]

    -4

    TEXT

    65535

    VARCHAR

    java.lang.String

    -1

    INTEGER

    4

    INTEGER UNSIGNED

    java.lang.Long

    4

    TINYINT

    3

    TINYINT UNSIGNED

    java.lang.Integer

    -6

    SMALLINT

    5

    SMALLINT UNSIGNED

    java.lang.Integer

    5

    MEDIUMINT

    8

    MEDIUMINT UNSIGNED

    java.lang.Integer

    4

    BIT

    1

    BIT

    java.lang.Boolean

    -7

    BIGINT

    20

    BIGINT UNSIGNED

    java.math.BigInteger

    -5

    FLOAT

    4+8

    FLOAT

    java.lang.Float

    7

    DOUBLE

    22

    DOUBLE

    java.lang.Double

    8

    DECIMAL

    11

    DECIMAL

    java.math.BigDecimal

    3

    BOOLEAN

    1

    同TINYINT

    ID

    11

    PK (INTEGER UNSIGNED)

    java.lang.Long

    4

    DATE

    10

    DATE

    java.sql.Date

    91

    TIME

    8

    TIME

    java.sql.Time

    92

    DATETIME

    19

    DATETIME

    java.sql.Timestamp

    93

    TIMESTAMP

    19

    TIMESTAMP

    java.sql.Timestamp

    93

    YEAR

    4

    YEAR

    java.sql.Date

    91

    展开全文
  • C# 数据类型转换--(ushort 转换补充)

    千次阅读 2018-11-05 11:47:32
    using System; using System.Collections.Generic; using System.Text; namespace ConvertDataType { class Program { static void Main(string[] args) { ushort[] data; ...
    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace ConvertDataType
    {
        class Program
        {
            static void Main(string[] args)
            {
                ushort[] data;
                //Convert ushort array to Long, data[0]=>Low Word, data[1]=>High Word
                data = new ushort[2] { 4, 65535 };
                long longValue;
                longValue =(Int32)(((UInt32)data[1] << 16) | (UInt32)data[0]);
                Console.WriteLine(longValue.ToString()); //-65532
                Console.ReadLine();
                
                //Convert ushort array to UnsignedLong, data[0]=>Low Word, data[1]=>High Word
                data = new ushort[2] { 25520,13587 };
                ulong ulongValue;
                ulongValue = (UInt32)(((UInt32)data[1] << 16) | (UInt32)data[0]);
                Console.WriteLine(ulongValue.ToString()); //890463152
                Console.ReadLine();
                
                //Convert ushort array to Hex 
                data = new ushort[1] { 17988 };          
                Console.WriteLine(data[0].ToString("X4")); //FFFF
                Console.ReadLine();
               
                //Convert ushort array to Float 
                data = new ushort[2] { 19311, 65529 };         
                float[] floatData = new float[data.Length / 2];
                Buffer.BlockCopy(data, 0, floatData, 0, data.Length * 2);
                for (int index = 0; index < floatData.Length; index += 2)
                {
                    Console.WriteLine(floatData[index / 2].ToString("0.0000")); //123.4560
                    Console.ReadLine();              
                }
                
                //Convert to double
                data = new ushort[4] { 65512, 59784, 64790, 16675 };
                double[] doubleData = new double[2];
                Buffer.BlockCopy(data, 0, doubleData, 0, 8);
                Console.WriteLine(doubleData[0].ToString());
    
    
                //Convert ushort value to Int16                         
                ushort ushortValue = 65516 ;
                Int16 int16Value = (Int16)ushortValue;            
                Console.WriteLine(int16Value.ToString()); //-20
                Console.ReadLine();
    
                //------------------------------------------------------------------------------------------
                
                ushort[] uintData = new ushort[2];  
       
                //Convert Long value to ushort array                             
                long[] longData ;
                longData = new long[1] { -65532 };
                Buffer.BlockCopy(longData, 0, uintData,0 , 4);
                for (int index = 0; index < uintData.Length; index ++)
                {
                    //uintData[0] = 4 ;uintData[1] = 65535
                    Console.WriteLine(string.Format("uintData[{0}] = {1}", index, uintData[index]));              
                }
                Console.ReadLine();
    
                //Convert UnsignedLong value to ushort array          
                ulong[] ulongData;
                ulongData = new ulong[1] { 890463152 }; 
                Buffer.BlockCopy(ulongData, 0, uintData, 0, 4);
                for (int index = 0; index < uintData.Length; index++)
                {
                    //uintData[0] = 25520;uintData[1] = 13587
                    Console.WriteLine(string.Format("uintData[{0}] = {1}", index, uintData[index]));
                }
                Console.ReadLine();
    
                //Convert Hex to ushort
                string hexValue = "FFEC";     
                Console.WriteLine(Convert.ToInt32(hexValue, 16));  //65516       
                Console.ReadLine();
    
                //Convert Float to short 
                floatData = new float[1] { 223.4560f };
                Buffer.BlockCopy(floatData, 0, uintData, 0, 4);
                for (int index = 0; index < uintData.Length; index++)
                {
                    //uintData[0] = 29884 ;uintData[1] = 17247
                    Console.WriteLine(string.Format("uintData[{0}] = {1}", index, uintData[index]));
                }
                Console.ReadLine();
          
                //Convert Int16 value to ushort           
                int16Value = -35;
                ushort uintValue = (ushort)int16Value;
                Console.WriteLine(uintValue.ToString()); //65501
                Console.ReadLine();
                
            }
        }
    }
    

     

    展开全文
  • 本文讨论的数据类型转换,并非传统意义上...以Short和Ushort为例,short取值范围-32767 ~ + 32768,Ushort取值范围0 ~ 65536。 若在计算机寄存器内存储了“1011 0000 0100 0110”,这样一串二进制数 那么对于Ush...

    本文讨论的数据类型转换,并非传统意义上针对数值不变的数据类型转换,即不是说数据变换了类型后其值不变

    本文讨论的是数据类型转换后,其在寄存器保存的二进制数是一样的

    以Short和Ushort为例,short取值范围-32767 ~ + 32768,Ushort取值范围0 ~ 65536。

    若在计算机寄存器内存储了“1011 0000 0100 0110”,这样一串二进制数

    那么对于Ushort来说,数值是45126,而对于Short来说其值是 -20410

    值得注意的是,负数在计算机中以补码形式存储的。

    1. 添加必要的引用

    Imports System.Runtime.InteropServices

    2. 加入下述代码

    <StructLayout(LayoutKind.Explicit)> _
    Public Structure SHORT_USHORT
        <FieldOffset(0)> Public ShortValue As Short
        <FieldOffset(0)> Public UShortValue As UShort
        <FieldOffset(0)> Public CharValue As Char
    End Structure

    3.  使用实例,下列代码放函数

    Dim temp As SHORT_USHORT
    temp.UShortValue = 45126

    给temp的Ushort类型赋值45126,下面看看对应的Short值

    标题

    已经转换完成。

     

    展开全文
  • 我有一个char型指针,指向的内容是“0123456789abcdef”的字符数组,我现在想要将其转换成USHORT数据{0123,4567,89ab,........}. 由于数据有约1M大小,故使用sscanf(pcTemp,"%X",pusTemp); sscanf函数速率太慢...
  • .net中Ushort转short

    2019-12-18 22:37:57
    在工业控制数据采集系统中遇到的问题,用NModbus读的寄存器,返回的是UShort数组,这个时候再转Short就会出错,再网上查找资料找到以下代码段: Imports System.Runtime.InteropServices <StructLayout...

    在工业控制数据采集系统中遇到的问题,用NModbus读的寄存器,返回的是UShort数组,这个时候再转Short就会出错,再网上查找资料找到以下代码段:

    Imports System.Runtime.InteropServices

        <StructLayout(LayoutKind.Explicit)> _
        Public Structure SHORT_USHORT
            <FieldOffset(0)> Public ShortValue As Short
            <FieldOffset(0)> Public UShortValue As UShort
            <FieldOffset(0)> Public CharValue As Char
        End Structure

    我不是很懂这个写法,强制类型转换吗?

    但是自己想出了另一个办法,如下代码:

        Public Function U_To_S(ByVal ust As UShort) As Short
            Dim str As String = Convert.ToString(ust, 2)
            Dim st As Short = Convert.ToInt16(str, 2)
            Return st
        End Function

    可以实现转换了。

    展开全文
  • C#的数据类型可以分为3类:数值类型,引用类型,指针类型。指针类型仅在不安全代码中使用。  值类型包括简单类型(如字符型,浮点型和整数型等),集合类型和结构型。引用类型包括类类型,接口类型,代表类型和数组...
  • * 函数功能:读数据 * * 输入参数:card_type(卡片类型);keyName(字段名(FileStruct.ini)) * * 输出参数:data(字段对应的数据);dlen:数据的实际长度 * * 返回值: 0-成功,其它-失败 */ EXPORTDLL int ...
  • C#的数据类型可以分为3类:数值类型,引用类型,指针类型。指针类型仅在不安全代码中使用。  值类型包括简单类型(如字符型,浮点型和整数型等),集合类型和结构型。引用类型包括类类型,接口类型,代表类型和数组...
  • 想用IPython.display 播放一个音频的时候遇到这样一个错误,和普通的音频数据对比发现我的采样频率是二维的,像这样 后面出现错误的原因就是因为读到的数据是语音文件的采样频率,有两列,表示是双声道语音信号,...
  • c#编程经验2

    2019-12-30 18:06:43
    1.关于如何将两个ushort数据转为一个float型数据 public float test(ushort P1,ushort P2) { int intsign, insignrest, intexponent, intexponentrest; float faresult, fadigit; ...
  • C#数据类型转换 原始数据类型 可转换类型 sbyte byte、ushort、uint 、ulong、char byte sbyte、char short sbyte、byte、uint、ushort、ulong、char ushort sbyte、byte、short、char int sbyte、...
  • 大小端数据转换

    千次阅读 2010-08-04 12:29:00
    #define NET_USHORT(u16) ((unsigned short)((((unsigned short)(u16)) >> 8) | (((unsigned short)(u16)) #define NET_ULONG(u32) ((unsigned long)(NET_SHORT((u32) >> 16) | (NET_SHORT(u32 & 0xFFFF) #define ...
  • C#数据类型

    2016-03-02 18:01:35
    整型数据 包括sbyte, byte, short, ushort, int, uint, long, ulong.浮点型数据 包含小数部分,精确度要求不是特别高,包括float和double.decimal类型数据 可以处理大数据,并可以精确进行小数位计算的数据类型。...
  • 数据类型

    2018-01-04 14:06:00
    数据类型包括值类型和引用类型 值类型讲数值保存在堆当中 引用类型将值保存在栈中,在堆中保存地址 整数类型细分为八类(节约内存): byte(8位) System.Byte sbyte System.Sbyte short(16位)System.Int16 ...
  • 数据保存到excel中

    2011-07-06 17:22:06
    C++操作excel,将数据保存到excel中. 已封装成dll,调用dll可以实现对excel的操作保存数据 其中给了调用dll的例子以及说明文档 已经实现的函数功能: SetSheetNum(USHORT newVal) 设置工作薄个数 SetCurrentSheet...
  • 一、值类型: 简单类型: 整型: 有符号整型:sbyte,short,int,long 无符号整型:byte,ushort,uint,ulong Unicode字符型:char IEEE浮点型:float,double 高精度小数:decimal 布尔型:bool 两个值:...
  • C# 数据类型

    2019-09-30 00:25:46
    C# 数据类型 在C#中,整形有以下几个sbyte,byte,char,short,ushort,int,uint,long,ulong。 下面以表格的形式说明各种整形的取值范围  类型 取值范围 长度  ...
  • 关于如何将byte数据转换为其他类型如uint或ushort类型,使用如下: (注意大端小端) byte转ushort 左移 byte[] buffer = { 0x05, 0x01 }; ushort number= (ushort)(((buffer [0] & 0xFF) << 8) | ...
  • C#中数据类型转换-隐式转换

    千次阅读 2010-11-22 10:23:00
    隐式转换:一般是低类型向高... 从 byte 到 short、ushort、int、uint、long、ulong、float double 或 decimal。 从 short 到 int、long、float、double 或 decimal。 从 ushort 到 int、uint、lo
  • 基本数据类型

    2020-05-18 15:08:47
    /******************基本数据类型******************/ //数据类型 说明 字节大小 备注 bool 逻辑值 1字节 只能输入 True/False sbyte 有符号的字节型 1字节 ...ushort 无符号的短整型 2字节 int 有符
  • 在openCV 中经常会遇到需要访问mat类对象中的数据的情况,所以必须真确填写相应的数据类型。1、OpenCV中的数据类型和常用的数据类型对应关系如下:Mat_<uchar>-------...Mat_<ushort>--------CV_16U Mat_<int>---------
  • Opencv基本数据类型

    2019-09-29 19:30:54
    1.OpenCV中数据类型和常用数据类型对应 Mat<uchar> CV_8U Mat<char> CV_8S Mar<short> CV_16S Mat<ushort&g...
  • 消息队列有关的数据结构

    千次阅读 2016-09-26 19:57:39
    数据结构: 1.ipc_perm 系统使用ipc_perm 结构来保存每个IPC 对象权限信息。在Linux 的库文件linux/ipc.h 中,它是这样定义的: struct ipc_perm { key_t key; ushort uid; /* owner euid and...
  • C#简单数据结构

    2019-04-13 16:43:15
    值类型:int char float bool byte double long short uint ulong ushort decimal(128位精确的十进制值) 引用类型:不包含存储在变量中的实际数据 但它们包含对变量的引用 指向的是一个内存位内置的引用类型:...
  • /// <summary> /// 垂直翻转位图颜色数据 ...private Color[] flipVerticalBitmapColors(Color[] colors,ushort bitmapWidth,ushort bitmapHeight){ Color[] tempColors=new Color[colors.Lengt...
  • C# 数据类型转换

    2018-08-23 17:03:45
    隐式类型转换:小的数据类型到大的数据类型 隐式数值转换 从 到 sbyte short、int、long、float、double 或 decimal byte short、ushort、int、uint、...
  • Linux内核数据结构

    2017-07-27 14:47:17
    short:短整型 ushort:int:整形 uintlong ulong: 2.内核编程不允许处理浮点数:cpu处理浮点型数据的效率极低---用户空间处理浮点型数据 如果对内核模块的某一个变量进行修改,必须要声明: 内核模块参数;module_...
  • 想要弄明白数据类型转换,首先要知道有哪些数据类型。 从数据类型的复杂角度上说,数据类型有两类:简单数据类型和复杂数据类型其中复杂数据类型是由简单数据类型和...ushort 16位无符号整数 0~65535 int 32位有符号.
  • 在代码中选择的数据类型要符实际,列如:在年龄,物体个数,身高或时间时,要选用无符号的类型(int , ushort …)。 在使用特殊数据类型是要注意赋值数据后缀所带字母,(decimal , long , float , double)。 类型...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 692
精华内容 276
关键字:

ushort数据