我是C新手,並且與CUDA一起工作,儘管我不認爲這個問題是針對CUDA的 - 我已經能夠在沒有任何問題的情況下將數據傳輸到GPU設備或從GPU設備傳輸數據,並且僅用於測試目的,單線程。循環不識別變量?
長循環計算f1和f2後,我有這樣的代碼片段:
float price = 0;
float net = 0;
int numTrades = 0;
for (int j = 1; j < dataCol; j++) {
if (((f1[j] > f2[j]) && (f1[j - 1] < f2[j - 1]) && price == 0)) {
price = data[j];
numTrades++;
}
else if (((f1[j] < f2[j]) && (f1[j - 1] > f2[j - 1]) && price != 0)) {
net += data[j] - price;
price = 0;
numTrades++;
}
}
其中,據我可以告訴沒有任何問題,除了它拒絕編譯事實與一個「標識符」價格「未定義」錯誤來自第一個if語句。這段代碼是我提到的代碼中的第一個地方,我嘗試用int,float,double,甚至布爾值進行初始化,但仍然得到相同的錯誤。
任何人有任何想法可能會導致此?
你有沒有正確地完成語句之前'浮動價= 0;'線?也許這是錯誤的,並且這隻會成爲編譯器失敗的一個。 –
是的..這是令人尷尬的,我不知道爲什麼它沒有像往常一樣將我指向上面的線。儘管感謝您的快速回復。 – MKennedy
Your're歡迎@AltusVultur。將它作爲答案發布。 –