string型变量的初始化,定义,用法

头文件:

string.h

属性:

String 属于引用数据类型;

用法:

1:初始化:

第一种方式::变量名(“字符串”)

第二种方式::变量名=“字符串”

举例:

std:: string name2 = "balabal";
或string s2( "balabala")
定义一个新变量S2,内容完全等于balabala;

2:追加字符串

第一种方式::变量名+=“字符串”

第二种方式::变量名=std::string(“字符串”)+“字符串”

std:: string nameToAdd = "my";
nameToAdd += "cat";
my追加cat
和std:: string nameToAdd2 = std:: string( "my") + "Hello!";
注意不能用:std::string nameToAdd = "my" + "cat" 这样实际上是将两个const char的数组相加,"字符串"其实是一个const char数组,是一个指针,它不是真正的字符串,不能将这两个指针相加;这里 是创建一个string对象并赋值给另一个string对象

3:选择添加: 

第一种方式::变量名(“字符串”)

第二种方式::变量名=“字符串”

std:: string name( "balabala",3,3);
定义name为balabala中从第三个字符开始往后的三个字符aba;
和  string name( "balabala",4);
定义一个新变量,内容等于balabala前4个字符;

4:重复

方式:变量名(重复次数,'单个字符')

std:: string name(8, 'b');
新定义一个新变量,内容为8个b;

5:查找字符串中的文本

方式:变量名.find("字符串“)

std:: string nameToAdd = "mycat";
nameToAdd.find( "cat");
查找字符串nameToAdd里面的字符串"cat",查找成功返回的是cat所在的首地址,查找失败返回std:: string::npos std::string::npos的值等于size_type类型可以表示的最大值,通常是一个非常大的数

6:数组操作

方式:变量名[ ]

因为string数据类型可以使用[ ],所以可以像操作数组一样访问字符串

7:插入操作

方式: 字符串变量名.insert(位置,内容(或者定义好的字符串变量地址(名字))

name8.insert(0, "whh");在第0个位置插入whh
和name8.insert(0, "balabala", 3, 3);在第0个位置(下标)插入字符串 balabala 中从第三个字符开始往后的三个字符aba;

8:删除操作

第一种方式::从某个下标开始及其后面全部丢弃。

       std:: string namestr( "shibusayirenqianlibuliuxing");
       namestr.erase(3);
得到shi

第二种方式::从某个下标开始的n个字符删掉。

       std:: string namestr( "shibusayirenqianlibuliuxing");
       namestr.erase(3,20);
得到shixing

9:清除操作

方式:变量名.clear()

std:: string namestr( "shibusayirenqianlibuliuxing");
namestr.clear();

10:返回字符串长度

 方式:变量名.size()返回字符串长度(.size())

追加:

1.运算结果仍然是String 类型;
2:String s=""; //长度无限制;
3: char c=’’; //编译不通过(char类型单引号内必须有一个字符);
4:可以用cin,cout来输入,显示str对象,不能用printf直接输出
5:可以用数组访问的方法来访问string类型数据,如 s[2];
6: 不能将一个数组赋值给另外一个数组,但是可以将一个string对象赋值给另一个string对象;
  • 30
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值