[英]Stack Smashing Detected C++ after I added new variables in my code along with some operations
我為計算目的編寫了一個代碼。 一切都很順利,直到我在主代碼的 function 中添加了這些行。 我讀到的關於這個問題的大多數線程都有解決方案,指的是處理字符串的情況。 它們中沒有一個與我正在處理的問題更接近。 在主程序中添加的代碼是:
float flx[3][4];
for (int a0 = 0; a0 < 4; a0++) {
for (int b0 = 0; b0 < 3; b0++) {
cout << "fluz!!!!";
flx[a0][b0] = phi1[a0][b0] - phi2[a0][b0];
cout << flx[a0][b0] << " ";
}
cout << "\n";
}
代碼在執行此部分后立即終止,因此無法繼續進行進一步的操作。
請幫忙。 謝謝
for (int a0=0;a0<4;a0++){
for (int b0=0;b0<3;b0++){
flx[a0][b0] = [...];
請注意,在外部循環中, a0
取值0
到3
(包括),但您聲明數組是這樣的:
float flx[3][4];
...這意味着只有0
、 1
和2
是flx
的第一個/主要維度的有效索引。 因此,您在數組范圍之外寫入,因此會出現堆棧粉碎錯誤消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.