C ++编译错误(与字符串文字比较导致未指定的行为)

时间:2017-05-22 12:08:57

标签: c++

我需要有关此消息的帮助:

  

input_login.cpp:247:警告:与字符串文字结果进行比较   在未指明的行为

行是:

  

if(row [maxcols]!=“PLAYER”)

可以解释这个错误的含义吗?首先我想的是maxcols上的变量所以我把DWORD但是不对。

代码是:

if (gm)
{
    char szQuery1[QUERY_MAX_LEN];
    snprintf(szQuery1, sizeof(szQuery1),"SELECT mAuthority FROM __sv1_common.gmlist WHERE mAccount = '%s'", login);
    std::auto_ptr<SQLMsg> pMsg3(DBManager::instance().DirectQuery(szQuery1));
    int maxcols = pMsg3->Get()->uiNumRows;
    if (pMsg3->Get()->uiNumRows >= 1)
    {
        MYSQL_ROW row = NULL;
        while ((row = mysql_fetch_row(pMsg3->Get()->pSQLResult)))
        {
            if (row[maxcols] != "PLAYER")
            {
                allowed_to_login = true;
                break;
            }
            maxcols--;
        }
    }
}

0 个答案:

没有答案