C++虐我千百遍之编译器差异——记一次string与int做’+’运算拼接
来源:互联网 发布:淘宝商家怎么贷款 编辑:程序博客网 时间:2024/05/29 13:22
事情由一次sql插入语句开始,我写了一个函数getsqlcmd(),这个函数的作用是将要插入数据库的各个字段以参数的形式传递进来进行字符串拼接,然后返回一个完整可用的sql语句,这个函数在我的电脑上是完全可用的,但是之前有一次我把它scp到师兄的虚拟机上,然后进行测试的时候发现插入的语句会被数据库拒绝,报出‘违反字段非空约束’,拼接的代码段大致如下:
string getsqlcmd(const char ** paras){ string cmd; int sometings_id=atoi(paras[1]); cmd=”insert into PACKEGE values(NULL,0,”; cmd+=paras[0]+”,\’”; cmd+=sometings_id+”\’);” return cmd;}
在我的笔记本上运行时,paras[1]传入0,则拼接出来的字符串是这样的:insert into package values(NULL,0,0,’0’);
而师兄的虚拟机中的输出结果却是这样的:insert into package values(NULL,0,0,’’);
可见完全一样的代码在两种环境下结果却不一样,应该是师兄的虚拟机中编译器是在string+int时将这个int作为asc码的char类型进行处理的。
0 0
- C++虐我千百遍之编译器差异——记一次string与int做’+’运算拼接
- zynq虐我千百遍——第0篇 环境搭建--smb与nfs
- zynq虐我千百遍——第1篇 Linaro之BOOT.bin
- zynq虐我千百遍——第2篇 Linaro之devicetree
- zynq虐我千百遍——第3篇 Linaro之kernel
- zynq虐我千百遍——第4篇 Linaro之rootfs
- 【项目成长日记】VS虐我千百遍—MVC框架加EF映射MySQL需要做的准备
- 【ITOO虐心之旅】——纵你虐我千百遍,我仍视你为初恋
- 算法虐我千百遍,我待算法如初恋
- 算法虐我千百遍,我待算法如初恋
- 代码虐我千百遍,我待代码如初恋。
- 算法虐我千百遍,我待算法如初恋
- C++ string 与 int拼接
- 高数虐我千百遍,我待高数如初恋
- int类型与string类型拼接
- 开发者:我待iOS如初恋 Android虐我千百遍
- 【算法虐我千百遍,我待ACM如初恋】Hail Algorithm,Hallelujah ACM!!
- 第十天【java虐我千百遍,我待java如初恋】
- EF——CodeFirst
- 学习数据库笔记六
- linux命令-.jp ,vimdiff
- 猫猫学IOS(六)UI之iOS热门游戏_超级猜图
- 聚类算法之BIRCH(Java实现)
- C++虐我千百遍之编译器差异——记一次string与int做’+’运算拼接
- Reverse Bits(数的位倒置)
- POJ 1273 Drainage Ditches
- 【MFC初学】
- 音视频同步系列文章之------时间戳与时间尺度(time scale)
- ViewPager onPageChangeListener总结
- 第二周项目4 图书馆的书
- NEUQ 1431:快速幂入门
- #个人赛第四场解题总结#