博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c++ string 结束符‘\000’
阅读量:4353 次
发布时间:2019-06-07

本文共 408 字,大约阅读时间需要 1 分钟。

昨天输出string类型时总是出错,发现输出到文件的一行里多了^@,输出到console却看不到,debug发现,string类型中多了\000,这主要由于我想要用\0截掉字符串最后一位,所以把字符串的最后一位换成了\0,却发生了错误。

例如:

              string tmp = “Hello;”

              string tmp2 = "World"

我想得到:

              tmp = “HelloWorld”

首先用了:

              tmp[tmp.length()-1] = '\0';   (1)

              tmp += tmp2

最后输出的却是:

              “Hello\000World”

原因是什么还不了解,只是大概知道string类型不是以\0为结束符的。

解决方法,将(1)处改为:

              tmp  = tmp.substr(0,tmp.length()-1);

转载于:https://www.cnblogs.com/dorothychai/p/3463657.html

你可能感兴趣的文章
Python之单元测试——HTMLTestRunner
查看>>
WebNotes(PHP、css、JavaScript等)
查看>>
C++:文件的输入和输出
查看>>
Http协议、Tomcat、servlet
查看>>
Spring Boot (11) mybatis 关联映射
查看>>
macOS 下安装tomcat
查看>>
字符串格式化复习笔记
查看>>
c++ 宏定义调用不定参数的函数
查看>>
动态规划典型例题--背包问题九讲
查看>>
Qt之QHeaderView自定义排序(终极版)
查看>>
python----logging
查看>>
LBP特征 学习笔记
查看>>
与TIME_WAIT相关的几个内核参数修改测试讨论结论
查看>>
webpack构建react应用三:使用webpack Loaders 模块加载器(一)
查看>>
Java JDBC
查看>>
走势终完美 --执子之手
查看>>
补全左括号
查看>>
javascript中关于坐标 大小 的描述
查看>>
8086CPU各寄存器的用途
查看>>
AngularJs中,如何在render完成之后,执行Js脚本
查看>>