如何在C++中操作双数组数据

How to manipulate double array data in C++?

本文关键字:数组 数据 操作 C++      更新时间:2023-10-16

我得到错误C2297:"*":非法,右操作数在这段代码中的类型为"double*":

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
    double cx=0.5;
    double**image_array;
    image_array= new double*[5];
    for (int i=0;i<5;i++)
    {
        image_array[i]= new double[5];          
        for(int j=0;j<5;j++)
        {
            image_array[i][j]=0;
        }
    }
    for (int i=0;i<5;i++){
        for(int j=0;j<5;j++)
        {
            int i=cx*image_array[i,j];
        }
    }
    system("PAUSE");
    return 0;
}

谁能说出原因吗。我不能用双类型数据乘以双数组吗?或者我还能做什么?

image_array[i,j]无法执行您想要的操作。您需要image_array[i][j]

您的代码有一些问题-清理格式,主要问题是尝试索引image_array[i,j]。使用image_array[i][j]——这是对代码片段的有效解释,并进行了一些修改。

#include <iostream>
using namespace std;
int main() 
{ 
    double cx=0.5; 
    double**image_array; 
    image_array= new double*[5]; 
    for (int i=0;i<5;i++) { 
        image_array[i]= new double[5];
        for(int j=0;j<5;j++) 
        { 
            image_array[i][j]=i*5+j; 
        } 
    }
    for (int i=0;i<5;i++)
    {
        for(int j=0;j<5;j++)
        {
            double d=cx*image_array[i][j];
                        cout << d << "-";
        }
                cout << endl;
    }
    //system("PAUSE"); 
    return 0;
}

您可以在此处看到示例输出:http://codepad.org/38r4CZ9W