急急急急??????
为什么存储过程中返回值为int 调用存储过程的方法要求参数为long型
回来又有个int64 他们之间有什么关系,他们之间可以自动转换吗?
如果参数为long 传入int64行不行呀
在C#中long与int64区别为:对象不同、声明方式不同、精度不同。
一、对象不同
1、long:long是C#基本库System.Int64里的一个实例对象。
2、int64:int64是C#基本库System.Int64里的一个定义对象。
二、声明方式不同
1、long:long在C#中采用了值类型的声明方式。
2、int64:int64在C#中采用了引用类型的声明方式。
三、精度不同
1、long:long是长整形数据类型,数据转换为int64不会失精度。
2、int64:int64是整形数据类型,数据转换为long会失精度。
long与int64都是C#的整数类型,它们唯一的区别是在声明方式上的不同。long采用了值类型的声明方式,是System.Int64的一个实例;int64采用了引用类型的声明方式,直接运用System.Int64声明。它们二者之间是可以自动转换的。
扩展资料:
1、long:编程语言中的长整形数据类型,是long int的缩写,它的表示范围从-9,223,372,036,854,775,808到9,223,372,036,854,775,807,在C#中是System.Int64的一个实例。
2、int64:是有符号64位整型数据类型,表示的范围从-9223372036854775808到9,223,372,036,854,775,807,在C#语言中是System.Int64的引用实例。
3、值类型:值类型是直接将值存储在栈内的,是一个对象的实例,在C#的中,long、int、float、char、bool、enum、struct都是值类型,它们都继承System.ValueType。
4、引用类型:数据存储在内存堆中,而内存中只存放数据的地址,在C#中引用类型包括类,接口,委托等。
本回答被网友采纳