C++与C的区别(六)

string类型

1、string创建

#include<iostream>
#include<string>//注意string.h是C语言的
using namespace std;
int main()
{
//1、先创建后初始化,注意std::string,这里std被命名空间代替
string str1;
str1="ILOVEYOU";
cout<<str1;//打印出ILOVEYOU
//2、括号的方式赋值
string str2("Iloveyou");
string str4(str2);
//3、等号的方式赋值
string str3="IMissyou";
string str5=str3;
//4、在你使用的范围下,一般长度没有限制
return 0;
}

2、基本操作:拷贝、赋值、连接、比较

#include<iostream>
#include<string>
using namespace std;
int main()
{
//赋值就直接用等号赋值即可
string str1="ONE";
string str2=str1;
//连接直接用+号就好,注意没有减法
string str3=str1+str2;
//等效:string str3=str1.append(str2)调用函数的方式
//比较的话直接比较即可
if(str3>str2)//比较依旧是按照char*去比较的
//等效:str3.compare(str2)调用函数的方式
{
cout<<"大的"<<str2<<endl;
}
else
{
cout<<"大的"<<str3<<endl;
}
return 0;
}

在C++中尽量用string,不要用char*,当然如果char* 用的十分熟练可以使用
3、C与C++中string 的比较

#include<iostream>
#include<string>
#include<stdio.h>
using namespace std;
int main()
{
//1、在C++中string是一个自定义类型
//2、C++中string不能用在C语言的字符串处理函数
/*3、C++如何转换为C语言的char*:c_str()和data()函数,两个函
数均可以转换*/
string str1="ILOVEYOU";
//printf("%s",str1);//此时未打印出任何东西,因为%s属于char*
printf("%s",str1.c_str());
printf("%s",str1.data());
/*在图形库中有一个函数outtextxy(int x,int y,char* str)
注意要把string转换为char*,所以在自己封装一些按钮的时候要
注意把string转换为char* */
string str2=to_string(123456798);//此处打印为123456798
//to_string直接把相应的数字转换为字符串
return 0;
}

4、C++中没有记录\0这个长度的

#include<iostream>
#include<string>
using namespace std;
int main()
{
//下标法去访问
string str1="IMissyou";
for(int i=0;i<8;i++)
{
cout<<str1[i];
}
cout<<endl;
return 0;
}

5、其他的操作就根据在线文档去查找即可

声明:所有文章皆是从书本以及课程学习所获,只是总结知识点顺便练习而已,所以也会存在不够全面的知识点以小失误

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值