首先,我搜索了很多,也嘗試了很多東西,但不幸的是沒有解決我的問題。比較指針字符
下面,我試着比較兩個char *值。但我不明白爲什麼這不起作用。我的意圖是,只有當temp不等於IDMilight時,此函數纔會執行sendCommand()。 如果對數據庫進行了調整,溫度值將會不同。 所以如果沒有任何調整,它必須延遲2秒並再次檢查。
我很新的C++,所以我希望有人能幫助我解決這個
static char *IDMilight = new char;
static char *temp = new char;
void mysql_query_connection(){
if (!mysql_query(mysql1, "SELECT IDMilight, Hex FROM Milight ORDER BY IDMilight DESC LIMIT 1"))
{
MYSQL_RES* result = mysql_store_result(mysql1);
MYSQL_ROW row = mysql_fetch_row(result);
temp = row[0];
if (*temp != *IDMilight) {
IDMilight = row[0];
hexCode = row[1];
sentCommand();
}
}
}
下,如果statments我也試過,但不幸的是不起作用或者:
if (temp != IDMilight)
if (&temp != &IDMilight)
如果我打印這個值,它們不是彼此相等。
你似乎對C++有不少誤解。你應該退後一步,系統地從一本好書中學習語言。 –
@BaummitAugen是的,尤其是指針。順便說一句,代碼也可以編爲C. – Melebius
@BaummitAugen,謝謝你的反應。你能告訴我這些誤解嗎? – Matthijs