我创建的一个简单函数遇到了一个特殊问题。此函数生成一个介于 0-14 之间的随机数,然后使用该随机生成的数字作为大小创建一个数组,并用字符“x”填充它。
我遇到的问题是,当我调用该函数时,它会在 x 之后随机显示符号或数字。
我最初将数组的大小声明为 15,但认为是剩余的插槽导致了此显示问题。但是,更改功能后仍然存在。
这是我当前使用的函数:
void application()
{
int randSize, i;
srand((unsigned)time(NULL));
randSize = (rand() % 15);
char array[randSize];
char *bar = array;
for(i=0; i< randSize; i++)
array[i] = 'x';
printf("%s | ", bar);
}
最佳答案
在 C 语言中不需要以 \0
结束字符串吗? )例如:
char array[randSize + 1];
for (i=0; i < randSize; i++)
array[i] = 'x';
array[i] = '\0';
(更新此内容是因为您确实可能想要获取字符串的有用部分 randSize
length)。
关于c - 在 C 中打印字符数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12676804/