srand((unsigned)(NULL))里的unsigned到底有什么用

srand((unsigned)(NULL))里的unsigned到底有什么用,第1张

srand作用是设置随机数的“种子”,调用rand函数提供一个伪随机数列。

srand((unsigned)(NULL)) 其实就是 srand(0),用unsigned只是为了防止编译时的警告,对程序或神悄运行没瞎此有任何影响。

相同的种子,会得到完全相同的随机数列,即这个程序无论执行多少次,其number都是一个固定值。

rand函数的返回值类型是int,是有符号的。如果你想要无符号数,需要写成

unsigned int number = (unsigned)rand()

一般程序都使用当前系统衫渣时间作为随机数种子,既有代码:

#include<time.h> // time函数的头文件

...

srand(time(NULL))

...

int n = rand()

unsigned 是C语言的关键字,表示无符号数。

unsigned 可以与各种整数类型连用。包括char, int, long等。前握

当unsigned独立使用时,默认为unsigned int。

当没有unsigned时,默认为signed类型,即有符号数,这时存储的最高位是符号埋哪位。而加上unsigned后,表示无符号类型,所有数位均用来存储值。

相对于有符号数,无符号数无法表示负弯悔码数,但可以存储更大范围的正数。

C语言中,输出unsigned类型的格式字符为%u。

肯定不一样的,char 的最大值是127,你个他的值是200,超出范围,链旦孝所以相当于是73,但是unsigned char 最大值是255,所以200才可棚稿以迟腊正常存储 明白?


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12456065.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存