如何生成8字节十六进制值?

时间:2010-08-23 11:58:36

标签: c seed packets

我想用C:

生成这个顺序数据
data_packet[1] = 0706050403020100 (seed_value)

data_packet[2] = 0f0e0d0c0b0a0908

接下来将是接下来的8个十六进制字符,依此类推100个字节。我该怎么做?我们可以使用字符数组吗?

1 个答案:

答案 0 :(得分:0)

您不希望使用char数组,因为char可能会签名也可能不签名(实现已定义)。如果您正在使用从0x00到0xFF的十六进制数字,我强烈建议您使用unsigned char数组。

看起来数组中的值是连续的,从0到N.这表示使用for循环。

该数组的大小固定为8个字节。嗯,for循环的另一个好人选。

你的任务的艰难部分是字节的方向。例如,从位置7或位置0开始填充数组?

所以这里有一些psuedo代码可以帮助你:

For each value from 0 to N do:
begin
  for array position from 0 to 7 do: // or from 7 to 0
    put 'value' into the array at 'position';
  call function to process the array.
end

要获得更多乐趣,请将“put'value'”的功能更改为“put random value”。

如果您希望我们实际编写您的程序,请告诉我们。我可以用额外的钱。 : - )