2017-05-04 65 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

歡迎:) –