在C++中调用函数

Mar*_*cus 2 c++ cout function call

我试图调用一个没有返回类型的函数,但它似乎没有被调用.

代码看起来像这样(总结):

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;

int ItemsInQuestion[4];

void GetQuestions(int NumQuests);


int main()
{
    int NumberOfQuestions = 0;
    srand((unsigned)time(NULL));
    cout << "How many questions would you like?" << endl;
    cin >> NumberOfQuestions;
    cout << NumberOfQuestions << " questions will be asked.";
    GetQuestions(NumberOfQuestions);
    system ("PAUSE");
    return 0;

}

void GetQuestions(int NumQuests)
{
    for(int Questions=NumQuests; Questions>NumQuests; Questions++)
    {
        ItemsInQuestion[0]=(rand()%(263))+1;
        ItemsInQuestion[1]=(rand()%(263))+1;
        ItemsInQuestion[2]=(rand()%(263))+1;
        ItemsInQuestion[3]=(rand()%(263))+1;
        cout << ItemsInQuestion[0] << ' ' << ItemsInQuestion[1] << ' ' <<ItemsInQuestion[2] << ' ' << ItemsInQuestion[3];
    }
}
Run Code Online (Sandbox Code Playgroud)

输出数组中的值的行永远不会出现.是什么造成的?

Luc*_*ore 7

因为

 int Questions=NumQuests; 
Run Code Online (Sandbox Code Playgroud)

 Questions>NumQuests;
Run Code Online (Sandbox Code Playgroud)

不喜欢对方.

你设置QuestionsNumQuests然后告诉循环继续前进只要Questions严格大于NumQuests,它不是从一开始.

即使它是,你很快就会遇到溢出和未定义的行为.