如果传递值不会将数组重置回其全局,而int传递值会重置,即使您在函数中更改了它?例如,当我返回时,items_ordered变为0,即使我添加了1但数组在调用函数之前没有回到它的起始状态。我知道如果我通过引用传递items_ordered它会改变
#include <iostream>
using namespace std;
void meal(char menu_1[], int order);
int main()
{
char menu_order[50];
int items_ordered = 0;
meal(menu_order, items_ordered);
cout<<items_ordered<< menu_order;
return 0;
}
void meal(char menu_order[50],int items_ordered)
{
cout<< "please enter an item to order\n";
cin.get(menu_order, 50, '\n'); cin.ignore(100,'\n');
items_ordered += 1;
}