char * string 和cstring 之间的区别和联系以及相互转换

 

有关char* 、string、cstring 之间的区别和转换

Char* 类型讲解

1、 有关char* 是C语言保留的字符串风格

可以使用数组或者字符指针来处理字符串。

1) 数组形式

char s_array[]=“helloworld”

s_array 是地址常量,不能对其赋值:eg :s_array=”OK”

2) Char *s_pt=”this is a book”  

S_pt是常指针,用它不能来改变指示的地址的值,但是它所指示的地址的值是可以通过其他方式改变的。

2、 字符串处理函数

1) 字符串长度:int strlen(const char *string)

2) 字符串复制:char* strcpy(CHAR *S1,const char * s2)

3) 字符串复制N个字符:char * strncpy(char *s1,const char* s2,int n )

4) 字符串连接:char *strcat(char * s1,const char * s2)

5) 字符串比较:int strcmp(const char * s1,const char* s2)

3、 要使用字符串处理函数必须包含#include <string.h>

4、 整形数变char*:

1)使用atoi()、itoa()、长整形的话使用atot()、 _ttoa()

2)使用sprintf(char * dst,”format”,void  src)

String类型

1、 string类型是C++的标准库类型,用的时候需要包含#include<stirng>(注意不是string.h)

2、 符号”+”来连接两个string类型,类似于char*中的字符串处理函数strcat()

3、 可以用C++中容器的方法来处理string类型,eg:a.size()、a.empty()、

4、 求子字符串:string substr(int pos,[int nlen])  eg:string s3=s.substr(6,5);//从s第六个字符开始的连续的5个字符

5、 String类型转换成char*类型char * c_str():string s=”helloworld”   s.c_str()

6、 Char * 类型转换成string类型:

(1)在构造string类型的时候,直接初始化就成。

(2)或者要修改已有的string类型,用string s.assign()

 (3)或者是string s;s+=“helloworld“

Cstring类型

1、 要使用cstring,必须包含#include <afx.h>

2、 符号”+”来连接两个cstring类型,类似于char*中的字符串处理函数strcat()

3、 格式化字符串:cstring s.format(_T(“%d”),total)

4、 Char*变成cstring: 1)format()

                    2)sprint()

                    3)构造函数

                     4)“+“连接两个cstring

5、string类型变成char*:1)string str.getbuffer()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值