我正在尝试创建一个由一些字母和数字组成的 char 数组(该函数最初要复杂得多,但我一直在简化它以找出它为什么不能正常工作)。所以我有一个 char 数组,我在其中放置了 2 个字符,并尝试向其中添加一些数字。由于我无法弄清楚的原因,这些数字不会添加到数组中。这可能真的很愚蠢,但我是 C 新手,所以这里是简化的代码。非常感谢任何帮助,谢谢!
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char some_string[20];
char *make_str() {
some_string[0] = 'a';
some_string[1] = 'x';
int random = 0;
int rand_copy = 0;
random = (rand());
rand_copy = random;
int count = 2;
while ( rand_copy > 0 ) {
rand_copy = rand_copy / 10;
++count;
}
int i=2;
for (i=2; i<count; i++) {
some_string[i] = random%10;
random = random/10;
}
return (some_string);
}
int main(int argc, const char *argv[]) {
printf("the string is: %s\n",make_str());
return 0;
}