我有一个全局静态字符串 str[MAX] = { "aloha" , "behold", "donkey", "key", "joke", "none", "quack", "orange"};
这里的size是随机生成的,比如size=3,会打印出“Behold”、“donkey”和“none”。在添加到数组之前,我想检查它是否在里面。如果“看哪”、“驴”、“无”在数组内,如果我得到另一个词“驴”,它将拒绝并返回循环并生成另一个,因此我使用 i--
我不知道哪里出错了,希望有人能启发我。
谢谢。这是代码。
typedef char* Strings;
function example (Strings *s, int size)
{
char *q;
bool check;
q = new char[MAX];
*s = &q[0];
for (int i = 0; i < size; i++)
{
k = rand () % 8;
if (*s == '\0')
*s = Str[k];
else
{
check = compare (s, Str[k]);
if (check == 1)
*s = Str[k];
else
i--;
}
++s;
}
cout << endl;
}
bool compare (Strings *s, char *str)
{
while (*s != '\0')
{
if (strcmp (*s, Str))
return true;
else
return false;
++s;
}
}