VS2008下的C++工具

常识错误:

1,从int到string的过程。sprintf(chavv,"%x",a);其中,chavv是char * 类型的,转化之后,chavv可以直接和string类型相加。但是如果有常字符创,也就是“\t”之类的,不能连加,连加会报错,分开相加就没有问题了。

2,容器vector的使用,将文件存入容器的常规格式就是,循环gets,然后push_back()即可。map也是一样的道理。

3,find_first_of(),find_last_of()的函数。

4,for (int kk = 0;kk < oneModuleinfo->vecFaultCode.size();kk ++)
                {
                    char myNum1[100];
                    string newstring1 = "",newstring2 = "";
                    newstring = "";
                    sprintf(myNum1,"0x%02X,0x%02X,0x%02X,0x%02X,",(myNum & 0xFF000000)>> 24,(myNum & 0xFF0000) >> 16,(myNum & 0xFF00) >> 8,myNum & 0xFF);
                    
                    newstring = myNum1;
                    newstring += "\t" + oneModuleinfo->vecFaultCode[kk].strDTCNAME + "\t\t" + oneModuleinfo->vecFaultCode[kk].strDTCLABEL.substr(0,oneModuleinfo->vecFaultCode[kk].strDTCLABEL.find_first_of("\t")-1) + "\n";
                    fwrite(newstring.c_str(),newstring.size(),1,mfp_en);
                    newstring = "";
        
                    newstring = myNum1;
                    newstring += "\t" + oneModuleinfo->vecFaultCode[kk].strDTCNAME + "\t\t" + oneModuleinfo->vecFaultCode[kk].strDTCLABEL.substr(oneModuleinfo->vecFaultCode[kk].strDTCLABEL.find_first_of("\t")+1,oneModuleinfo->vecFaultCode[kk].strDTCLABEL.size()-oneModuleinfo->vecFaultCode[kk].strDTCLABEL.find_first_of("\t")-1) + "\n";
                    fwrite(newstring.c_str(),newstring.size(),1,mfp_cn);
                    myNum++;
                }

这一段说明上面的用法,以及sprintf的用法,以及和printf()相似的特性。

5,mycode_cn = "mycode_cn"

FILE *mfp_cn = fopen(mycode_cn.c_str(),"w");这里会报错,vs2008,但是加.c_str()就没什么问题了。

转载于:https://my.oschina.net/u/3845807/blog/2251476

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值