string sentence1("This ");
string sentence2("is.");
sentence1=sentence2+”\n";
书上说,用+运算符连接两个字符串都是在创建一个新的string对象,可是前后输出的&sentence1都是相同的,我该怎么理解这句话,如何得到新旧string对象的地址?
还有,+=运算符是在现有string对象的基础上修改,我想要是附加的string对象很长,以至于原有的string对象周围没有足够大的空闲空间存储,该怎么办?
写错了,应该是sentence1=sentence1+“\n";
不好意思,应该是sentence1=sentence1+“\n";
追答没有+运算,要用 += 运算:
sentence1+=“\n";
C++primer中的问题,下面这段代码中,string* pstr = new string;到底是...
string和vector是相似的东西。string是个类,也可以当做类型来使用,new的时候会自动申请一块内存空间,当不够使用时再重新申请。可以拿string头文件看看。C++中很多都不需要指定长度什么的,它既然是一个完善的类,就会自动增添内存。
C++string类实例化和初始化
默认初始化:创建一个空的std::string对象。使用字面值初始化:通过C风格字符串字面值来初始化std::string对象。使用std::string字面值初始化:使用std::string字面值来初始化另一个std::string对象。std::string str1 = "Hello";std::string str2 = str1;使用std::move初始化:通过移动语义来初...
c++中的:string s;string *pa=new string; *pa=s与pa=&s的区别?
string s;\/\/内存划个空间给s,s表示一个字符串,这个空间是固定的,也就是地址是固定的。可以放不同的值,也就是不同的字符串。cout<<"input strings"<<endl;while(cin>>s)\/\/这句把字符串放到那个空间去,注意这是个循环,每次都会放入一个新串,前面的被覆盖。感觉就像,一套二手房,房主不...
string的C++ 中
string &operator=(const string &s);\/\/把字符串s赋给当前字符串string &assign(const char *s);\/\/用c类型字符串s赋值string &assign(const char *s,int n);\/\/用c字符串s开始的n个字符赋值string &assign(const string &s);\/\/把字符串s赋给当前字符串string &assign(int n,char c);\/\/用n个字符c...
c++编程问题,string类型怎么赋值,怎么引用
C++中,string是一个类(注意,不是类型)。它的赋值,直接将字符串等于给它,或将同类的变量赋给它即可。比如:string LSStr,LSStrA; \/\/定义 LSStr = 'aabbccdd'; \/\/赋值 LSStrA = LSStr; \/\/同类赋值 1、不同编译环境下的C++,对字符串的处理稍有差别。2、最原始的C语言中,没有string,...
c语言中string是什么意思(C语言string是什么数据类型)
string是C++、java、VB等编程语言中的字符串,字符串是一个特殊的对象,属于引用类型。在java、C#中,String类对象创建后,字符串一旦初始化就不能更改,因为string类中所有字符串都是常量,数据是无法更改,由于string对象的不可变,所以可以共享。对String类的任何改变,都是返回一个新的String类对象。C+...
c++ 为什么要用string去处理字符串(STL string详解)
string类作为C++中的核心组成部分,其设计的一大优点是隐藏了字符序列的底层实现细节,如数组维数和\\0的位置。程序员无需关心这些底层问题,只需要专注于编程逻辑,这大大减少了由于内存管理和初始化错误而产生的常见问题。例如,创建string对象时,它会自动初始化为“零”值,确保了数据的正确性和安全性。
[详解-字符串] C++必知必会 字符串-string常用各种操作解析
在C++编程中,字符串-string这个数据类型是处理文本数据的关键,string类的丰富操作功能使其在文本处理中不可或缺。本文将详细解析C++中string类的常用操作:1. 首先,你需要在代码中包含`#include `头文件。2. 定义字符串时,可以直接使用`std::string str = "初始值"`的方式。3. 获得字符串长度的...
C++string的用法问题,不知道为什么用不了string类型
因为 string 是 std命名空间下的,就和cout 一样..所以 修改的方法有两个..1 加 命名空间 限定 std::string name;2 使用 using using std::string;
c++中如何在循环结构中创建新的string
不用每次都创建新的吧,在进入循环前创建一个string,进入循环后,每次在循环的末尾调用clear就行了吧:string a;for(){ \/\/给string赋值 a = ...;\/\/其余操作 ...\/\/清空string内容 a.clear()} ADD:你要是在循环过后仍然想使用这些string的话,可以利用vector<string>去做,每次循环都往里插入...