这是我找到的代码,read函数返回的是文件的字节数,那么urandom文件读取的内容就是随机数吗?这里限定了读取4个字节的意思是不是比如urandom可以随机1000000000000的数我们支取前4个字节位的数字?那么把这个数字的字节数给了(char )&randNum是为什么?为什么不是(int)&randNum?另外(char *)&randNum 得到了字节数,为什么打印出来是个随机数。?
01.#include
02.#include
03.
04.int main()
05.{
06. int randNum = 0;
07. int fd = open("/dev/urandom", O_RDONLY);
08. if(-1 == fd)
09. {
10. printf("error\n");
11. return 1;
12. }
13.
14. read(fd, (char *)&randNum, sizeof(int));
15. printf("randNum is %d\n", randNum);
16.
17. close(fd);
18.
19. return 0;
20.}