C++ c++;用户定义的数组是否解释为十六进制?

C++ c++;用户定义的数组是否解释为十六进制?,c++,arrays,C++,Arrays,编辑:我第一次这样做时问了太多问题。现在我没有提供足够的细节。简单地对数组进行c-outing是没有帮助的,因为我试图对数组进行算术运算,这会误解数据。这可能有助于找出问题所在,因此我将其标记为正确答案,并发表一篇新文章。我不知道还能做什么,我显然没有把大局告诉读者 我需要一个用户定义的字符串被程序解释为数组。我试图实现来自用户463035818的建议,但我认为没有正确的结果 我所说的数组在程序的这一部分的顶部被初始化为arrnStoreInput01A(我对其进行了裁剪,以便于阅读)。我指示用

编辑:我第一次这样做时问了太多问题。现在我没有提供足够的细节。简单地对数组进行c-outing是没有帮助的,因为我试图对数组进行算术运算,这会误解数据。这可能有助于找出问题所在,因此我将其标记为正确答案,并发表一篇新文章。我不知道还能做什么,我显然没有把大局告诉读者

我需要一个用户定义的字符串被程序解释为数组。我试图实现来自用户463035818的建议,但我认为没有正确的结果

我所说的数组在程序的这一部分的顶部被初始化为arrnStoreInput01A(我对其进行了裁剪,以便于阅读)。我指示用户以“I,j,k”的格式输入三个数字(如果更好的话,我将改为“I,j,k”——我已经测试了这两个数字)。现在的情况是,当我要求程序将结果吐回给我时(从底部的第4行),无论我是否使用逗号,它都会吐出一个十六进制而不是{I,j,k}(尽管结果是不同的十六进制)

发生了什么事?如何解决这个问题,使我有一个1x3整数数组,可以对其执行算术运算,即3*arrnStoreInput01A?多谢各位

#include "stdafx.h"
#include <cstdlib>
#include <iostream>
#include <string>
#include <vector>
#include <sstream>
#include <limits>
#include <tuple>

int main()
{
    int nNumCup = 0, nNumLem = 0, nNumSug = 0, nNumIce = 0;
    float fCoH = 20.00, fCostCup25 = 1.99, fCostCup50 = 2.49, fCostCup100 = 2.99;

        int arrnStoreInput01A[3];
        std::cout << "Go to Cups \n \n";
        std::cout << "Cups are availible in packs of 25, 50 and 100. \n"
            "Please enter three numbers in \"i,j,k\" format for the \n"
            "respective amounts of each of the following three products \n"
            "you want to buy: \n \n"
            "A) 25-pack of cups for " << fCostCup25 << "\n"
            "B) 50-pack of cups for " << fCostCup50 << "\n"
            "C) 100-pack of cups for " << fCostCup100 << "\n \n"
            "For example, type \"0,4,0\" to purchase 4 packages of 50 cups or \n"
            "type \"3,2,1\" to buy 3 packages of 25 cups, 2 packages of 50 cups \n"
            "and 1 package of 100 cups. \n \n";

        std::cin >> arrnStoreInput01A[0] >> arrnStoreInput01A[1] >> arrnStoreInput01A[2];

        float arrnCostCup[3] = { fCostCup25,fCostCup50,fCostCup100 };
        int arrnQuantCup[3] = { 25,50,100 };
        std::cout << arrnStoreInput01A;

    return 0;
}
#包括“stdafx.h”
#包括
#包括
#包括
#包括
#包括
#包括
#包括
int main()
{
int nNumCup=0,nNumLem=0,nNumSug=0,nNumIce=0;
浮子fCoH=20.00,fCostCup25=1.99,fCostCup50=2.49,fCostCup100=2.99;
int arrnStoreInput01A[3];

std::cout变量
arrnStoreInput01A
是一个数组。没有
运算符。我不是在几个小时前看到类似的问题吗?人们抱怨它不清楚,所以我删除了它。这个问题很清楚…和另一个问题。可能重复…或将它包装在一个可以从数组构造的对象中h确实有一个
运算符。有一个问题。当我输入“3,2,1”并使用你的代码吐出数组时,我得到3-858993460-858993460。我索引的方式有问题,你们有人看到吗?
std::cout << arrnStoreInput01A;
std::cout << &arrnStoreInput01A[0];
for (auto const value : arrnStoreInput01A)
{
    std::cout << value << ' ';
}