unsigned long fileSize = file.size();
byte buf[4];
buf[0] = (byte) fileSize & 0xFF;
buf[1] = (byte) (fileSize >> 8) & 0xFF;
buf[2] = (byte) (fileSize >> 16) & 0xFF;
buf[3] = (byte) (fileSize >> 24) & 0xFF;
谁能向我解释此代码。假设文件大小由您选择
假设您要将十进制数字8375拆分为数字。您可以这样进行:
unsigned value = 8375;
unsigned digit_0 = value % 10; // Gives 5
unsigned digit_1 = (value / 10) % 10; // Gives 7
unsigned digit_2 = (value / 100) % 10; // Gives 3
unsigned digit_3 = (value / 1000) % 10; // Gives 8
好吧,您发布的代码就是这样做的。只有它将数字拆分为八位组,八位组是成对的十六进制数字。也就是说,每个八位位组都可以采用[0..255]范围内的值。
发布的代码使用按位运算:(a >> 8)
is(a / 256)
和(a & 0xFF)
is (a % 256)
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句