2014-10-12 59 views
0

我試圖將兩個多維數組一起添加到第三個數組中,但沒有多少成功。我創建的前兩個數組的值和I我不確定如何將多維數組a添加到多維數組b中,在多方向數組c中具有正確的值。以下是我開始想到的。是否有可能將兩個多維數組一起添加到第三個多維數組

在此先感謝您的時間和技能。

int main() 
{ 
int a[2] [3] = 
{ 
    { 16, 18, 23 }, 
    { 54, 91, 11 } 
}; 

int b[2][3] = 
{ 
     { 14, 52, 77 }, 
     { 16, 19, 59 } 
}; 

int c[2][3]; 

for (int rows = 0; rows < 2; rows++) 
{ 
    for (int columns = 0; columns < 3; columns++) 
    { 
     c[rows][columns] = b[rows][columns] + a[rows][columns]; 
    } 
} 
_getch(); 
return 0; 

} 
+1

你的問題到底是什麼?你的代碼工作得很好,完全符合你所描述的內容。 – bames53 2014-10-12 00:19:37

+0

你說得對。它看起來像當我第一次將我的for循環放在錯誤的位置時輸出我的代碼時,它現在正在工作。我應該刪除此主題還是留下供他人蔘考? – 2014-10-12 00:29:05

回答

0

一種簡單的方法:將指針弄平並使用transform

int c[2][3]; 
std::transform(*a, *std::end(a), *b, *c, std::plus<int>()); // Or plus<> since C++14 
+0

感謝您的建議,這是很好的知道和更短。 – 2014-10-12 00:32:50