關於C語言中switch的第一個case上面寫代碼的愚蠢之舉

今天在開發貸記卡ATM前置時,在ATMCommCCPS.c中寫下了如下代碼

switch (atoi(cvtXml[i].txn_num))
{
        ret = -1;
        HtLog(gsLogFile,HT_LOG_MODE_DEBUG,__FILE__,__LINE__, "1atoi(cvtXml[i].txn_num = %d", atoi(cvtXml[i].txn_num));
        HtLog_TxnXml(atoi(cvtXml[i].txn_num), pstPreDef);
        HtLog(gsLogFile,HT_LOG_MODE_DEBUG,__FILE__,__LINE__, "2atoi(cvtXml[i].txn_num = %d", atoi(cvtXml[i].txn_num));
        case 1171:
            // 可用額度信息查詢
            ret = proc1171res((stCcps15020Xml *)pstPreDef, pstIpcIntTxnReq, pstIpcIntTxnRes);
            break;
        case 1181:
            // 賬戶信息查詢
            ret = proc1181res((stCcps12000Xml *)pstPreDef, pstIpcIntTxnReq, pstIpcIntTxnRes);
            break;
         case 1191:
            // 申請進度查詢
        //case ...:

        default:
            HtLog(gsLogFile, HT_LOG_MODE_NORMAL, __FILE__, __LINE__, "not catch the xml struct by txn num!");
            break;
}



調試了一上午在日誌中也沒發現諸如cvtXml[i].txn_num這樣的打印,百思不得其解,整了大半天才發現,原始在switch的第一個case上寫代碼雖然能夠編譯過,但是卻不會執行,我累哦個去!真實too young too naive.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章