C++ 中的向量输出
vector output in C++
我编写了一个程序,输出记录霜冻的最大和最小天数以及相应的年份和月份。我正在从文件中读取这些数据并将我需要的内容输入到向量中。
在文件中,月份以整数 1-12 显示,我的问题是在我的程序中输出月份时,当文件中的月份为 1 时,如何输出 "January"?
您可以制作 std::array
个 std::string
。索引将对应于月份名称。只要确保您考虑了基于 0 的索引,例如"January" == 0
,不是 1
。
std::array<std::string, 12> months = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
然后
cout << "The highest number of days frost was recorded is: "
<< maxFrost
<< ". The date was: "
<< months[maxMonth - 1] // adjust to 0-based index
<< ", "
<< maxFyear
<< ".\n"
<<endl; // maximum frost with month and year
如果你的编译器不支持std::array
,你可以使用固定的字符数组:
static const char * month_names[] =
{
"Dummy", // to make names line up with month numbers.
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December",
};
int main(void)
{
for (unsigned int m = 1; m <= 12; ++m)
{
cout << m << ") " << month_names[i] << endl;
}
return EXIT_SUCCESS;
}
注意:char *
类型用于数组,因为char *
可以作为固定数据存储并直接访问。使用 std::string
将涉及在访问它们之前为每个月份名称创建一个 std::string
实例。
我编写了一个程序,输出记录霜冻的最大和最小天数以及相应的年份和月份。我正在从文件中读取这些数据并将我需要的内容输入到向量中。
在文件中,月份以整数 1-12 显示,我的问题是在我的程序中输出月份时,当文件中的月份为 1 时,如何输出 "January"?
您可以制作 std::array
个 std::string
。索引将对应于月份名称。只要确保您考虑了基于 0 的索引,例如"January" == 0
,不是 1
。
std::array<std::string, 12> months = {"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
然后
cout << "The highest number of days frost was recorded is: "
<< maxFrost
<< ". The date was: "
<< months[maxMonth - 1] // adjust to 0-based index
<< ", "
<< maxFyear
<< ".\n"
<<endl; // maximum frost with month and year
如果你的编译器不支持std::array
,你可以使用固定的字符数组:
static const char * month_names[] =
{
"Dummy", // to make names line up with month numbers.
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December",
};
int main(void)
{
for (unsigned int m = 1; m <= 12; ++m)
{
cout << m << ") " << month_names[i] << endl;
}
return EXIT_SUCCESS;
}
注意:char *
类型用于数组,因为char *
可以作为固定数据存储并直接访问。使用 std::string
将涉及在访问它们之前为每个月份名称创建一个 std::string
实例。