您的位置 首页 资料

C++/C中的字符串

C++中的字符串因为有了标准库string的引入,使得字符串的处理也变得容易了,但是在也会导致一个新的问题,在C语言中的一些字符串处理问题也

C++” target=”_blank”>C++++中的字符串由于有了规范库string的引进,使得字符串的处理也变得简单了,可是在也会导致一个新的问题,在C言语中的一些字符串处理问题也随之而来啦。

在C++中的字符串string与C言语中的字符串存在较大的差异,首要咱们知道在C言语中字符串是字符串常量,是以null结束的字符串,一般咱们能够将字符串看做是一个以null字符结束的字符数组,可是如前面的文章中已将剖析了字符串和字符数组并不是等价的,而是存在必定的不同的。在C言语中字符串便是一个常量,是不能修正的,对字符串的修正都会导致意外的成果。

可是有时候C++也要处理关于C言语的一些问题,这时候咱们需求选用cstring库,该库与C言语中的string.h有很大的相似性,许多函数也是共同的。其间许多函数比方:strcat,strcpy,strncpy,strlen,strcmp等函数都存在的,这时候也是以null作为字符串的结束符的。

首要阐明一下C++中的字符串string,这时候的string与C言语中的字符串存在很大的不同,首要string是一个标志库,是一种类型,该类型的变量是能够仿制的,能够被修正的,也不是以null结束的。而C言语中的字符串能够认为是一个字符串字面值,是不能修正的。

同样在字符串长度上也存在必定的不同,在string中选用该规范库进步的size()函数确认字符串的长度,而C言语中的字符串则需求选用sizeof或许strlen函数来判别,一般strlen的值是不包括null的,可是sizeof是包括null的。

在指针操作过程中存在必定的不同,在string中,string *类型的指针指向一个string目标,而C言语中字符串的指针一般是把字符串作为数组处理,这时候指针指向的字符串的首个元素。这些都是在C++中处理时应该留意的问题。

正如在给C++初学者的50个主张中说到的,不要把C++作为C的扩展,而应该作为一种新的言语学习,每一种言语有一种思维。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/317716.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部