格式控制符

一直以来对各项繁杂的格式控制符掌握的不是很好, 总是知道的大概, 用的时候都是感觉差不多是这个样子....今天终于吃到苦头 = = ............

CString strTerminalID;
      strTerminalID.Format(TEXT("%10u"),m_nTerminalID);

exp.str("");
exp << "insert into T_B_CAR_REGISTER_INFO(id,TERMINAL_ID,PHONE_NUM, PROVINCE_ID, CITY_ID, FACTORY_ID, DEV_TYPE, DEV_ID, CAR_COLOR, CAR_NO)"
            << "values(T_B_CAR_REGISTER_INFO_SEQ.NEXTVAL, '"
            << strTerminalID                // 终端号
            << "','"
            << pDataTemp->szPhoneNum        // 手机号
            << "',"
            << pDataTemp->wProvinceID        // 省域ID
            << ","
            << pDataTemp->wCityID            // 市域ID
            << ",'"
            << strFactoryID                    // 制造厂商ID
            << "','"
            << strDevType                    // 终端型号
            << "','"
            << strDevID                        // 终端ID
            << "',"                
            << (int)pDataTemp->bBusColor    // 车牌颜色
            << ",'"
            << pDataTemp->szBusNo            // 车牌号码
            << "')";


        query.SetSQL(exp.str());

        bExcuteFlag = query.ExecSQL();

本来是想用 %10u 将一些位数不足10位的整数前面补'0'插入到数据库中的, 但是没想到%10u 默认的是左补空格符的...数据的错误直接导致程序的瘫痪!!!

稍微又复习了下格式控制符的相关内容, 发现其实格式控制符虽然繁杂, 但是还是有些规律可循的, 改天再系统的整理下这方面的知识吧...

转载于:https://www.cnblogs.com/kyle-he/p/3732186.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值