我正在尝试在格式化文本中做一些简单的输出.Setprecision不会将我的变量打印到两个小数位.
例如,如果firstItemPrice = 2.20,则输出为2.2而不是2.20
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
string firstitem = "";
string seconditem = "";
double firstItemNum;
double firstItemPrice = 0.00;
double secondItemNum;
double secondItemPrice = 0.00;
//first item
cout << "Enter the name of Item 1: ";
getline(cin, firstitem);
cout << "Enter the number of " << firstitem << "s and the price of each: ";
cin >> firstItemNum >> firstItemPrice;
cin.ignore();
//second item
cout << "Enter the name of Item 2: …Run Code Online (Sandbox Code Playgroud) 在这里筛选了很多帖子之后,遇到了很多麻烦.所有东西都编译但是我在这个函数中遇到了崩溃,这个函数应该动态地将一个数组的地址分配到这个指针数组中.我看到一个或两个内存地址发布,所以我不确定为什么它会在这个中间崩溃.
string *copyArray(string ptrArray[],int sizeArray)
{
string **dynamString = new string*[sizeArray];
int i;
for (i=0;i<=sizeArray;++i)
{
(*dynamString[i]) = ptrArray[i];
cout << dynamString[i];
}
return *dynamString;
}
Run Code Online (Sandbox Code Playgroud)
从主要我有:
string *arrPtr;
Run Code Online (Sandbox Code Playgroud)
和函数调用
arrPtr = copyArray(arrayOfStrings, arraySize);
Run Code Online (Sandbox Code Playgroud) 我正在解决一个问题,我有两个带有机场名称的输入文件.每个机场都有标准化的缩写,如旧金山(SFO)和洛杉矶(LAX)
第一个输入文件使用这些缩写,第二个文件使用城市名称.
我正在寻找一个优雅的解决方案,而不是使用std::string.compare()30种不同的if-else条件.