2017-05-04 66 views
-1

问题:如何使用该函数从数组中生成随机动物?C++使用指针算术的数组上的应用程序

const int MAX =12;  //12 animals 

const int MAXSTR = 10; //Max length for set 

typedef char * Element; 
static Element UniversalSet [MAX] = {"Rat", "Ox", "Tiger", "Rabbit", "Dragon","Snake", "Sheep", "Monkey", "Rooster", "Dog", "Pig", "Horse"}; 

void constructSet (Element *, int size) 
{ 
    Element* s; 

    for (int i = 0; i <= size; i++) 
    { 
     s[i] = UniversalSet [rand() % 12]; 
    } 
     cout << "Set S = {" << s[i] << "}"; 

} 
+0

你得到一个错误? – cosmoonot

+0

是的,抱歉,我忘了提及它。 – user349592

+0

名称查找“我改变了新的ISO“的”作用域 – user349592

回答

1

有语法错误移动cout内循环:

void constructSet(Element * elements, int size) 
{ 
    Element* s = elements; 

    for (int i = 0; i <= size; i++) 
    { 
     s[i] = UniversalSet[rand() % 12]; 

     cout << "Set S = {" << s[i] << "}";//Here 
    } 

} 

那就试试这个,它会工作:

Element e[3] ; 
constructSet(e, 3); 
+0

它的工作,谢谢您 – user349592

+0

欢迎:) –