c - 这个函数是如何工作的 "abcdefghijklmnopqrstuvwxyz"[rand()%26]?

标签 c random generate

生成字母表中的随机字母

"abcdefghijklmnopqrstuvwxyz" [rand()%26]

这是如何工作的?

最佳答案

其实就是这个表达式

"abcdefghijklmnopqrstuvwxyz" [rand()%26]

相当于

char *p = "abcdefghijklmnopqrstuvwxyz";

p[rand()%26]

即使用下标运算符从字符串文字中选择一个随机字符。

原始表达式中使用的字符串文字被隐式转换为指向其第一个元素的指针。

表达式 rand()%26 产生 [0, 25] 范围内的随机值(余数)

关于c - 这个函数是如何工作的 "abcdefghijklmnopqrstuvwxyz"[rand()%26]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59145253/

相关文章:

c++ - 不同位的随机对

java - Math.random() 生成相同的数字

matrix - 如何生成每个行和列的总和为零的矩阵

mysql - sql中产生重复数据

c - 了解 HDF5 的 slab

java - 为什么Java不支持C中的clrscr之类的函数?

c - 在 C 中使用信号量和共享内存的读写器

java - 随机多元正态分布

c - 文件 c 中的多个结构

java - 为什么 Maven 不从测试类生成源代码?