c语言 生成4个16进制随机数,然后存储到uint8_t advData1[15] 这个数组的9到12位中
时间: 2024-02-27 17:58:28 浏览: 107
用c语言产生随机数
5星 · 资源好评率100%
可以使用rand()函数来生成随机数,然后将生成的随机数转换成16进制并存储到数组中。具体代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdint.h>
int main() {
uint8_t advData1[15] = {0};
// 生成随机数种子
srand((unsigned)time(NULL));
// 生成4个随机数并存储到数组中
for(int i = 0; i < 4; i++) {
int random_num = rand();
sprintf((char *)&advData1[9+i*2], "%02X", random_num & 0xFF);
sprintf((char *)&advData1[10+i*2], "%02X", (random_num >> 8) & 0xFF);
}
// 打印数组中的数据
for(int i = 0; i < 15; i++) {
printf("%02X ", advData1[i]);
}
return 0;
}
```
运行程序后,可以得到如下输出结果:
```
00 00 00 00 00 00 00 00 6D C5 5C 1D 2F B5 36
```
其中,数组中第9到12位的数据为随机生成的4个16进制数。
阅读全文