C# 我不能理解下面的代码 矩阵trainData2=trainData.GetRows(intVar>>1,intVar,1);

C# 我不能理解下面的代码 矩阵trainData2=trainData.GetRows(intVar>>1,intVar,1);,c#,c#-4.0,C#,C# 4.0,intVar是整数类型。。。 请帮我理解这个代码。好的>1是右移;在这种情况下,它将(有效地)返回将intVar的值减半的值(除了一些涉及-ve数字的情况)。我不知道你的列车数据是什么,但我猜我们是在构建一个表的一半或什么的矩阵?嗯>1是右移;在这种情况下,它将(有效地)返回将intVar的值减半的值(除了一些涉及-ve数字的情况)。我不知道您的trainData是什么,但我猜我们是在构建一个表的一半或什么的矩阵?如果您不理解的部分是intVar>>1,这只是将值向右移动一位。换句话说,它将in

intVar是整数类型。。。
请帮我理解这个代码。

好的
>1
是右移;在这种情况下,它将(有效地)返回将
intVar
的值减半的值(除了一些涉及-ve数字的情况)。我不知道你的
列车数据是什么,但我猜我们是在构建一个表的一半或什么的矩阵?

>1
是右移;在这种情况下,它将(有效地)返回将
intVar
的值减半的值(除了一些涉及-ve数字的情况)。我不知道您的
trainData
是什么,但我猜我们是在构建一个表的一半或什么的矩阵?

如果您不理解的部分是
intVar>>1
,这只是将值向右移动一位。换句话说,它将intVar除以2。

如果您不理解的部分是
intVar>>1
,这只是将值向右移动一位。换句话说,它将intVar除以2。

>1
表示“向右移位1”,这是表示“将无符号除以2”的低级方式

也许这就是你需要的线索吧?

>1
的意思是“右移一”,这是一种低级的说法,表示“无符号除以2”


也许这就是你需要的线索?

这取决于你所说的“未签名”是什么意思<代码>>>
不尊重签名类型的MSB。如果它是一个无符号除法,我希望下面的(
j
k
)返回相同的结果(它们不返回):
int I=1>1。这取决于您所说的未签名<代码>>>
不尊重签名类型的MSB。如果它是一个无符号除法,我希望下面的(
j
k
)返回相同的结果(它们不返回):
int I=1>1
Matrix<float> trainData2 = trainData.GetRows(intVar >> 1, intVar, 1);