浅析string类字符串和C风格字符串之间的区别
2013-09-10 09:53
267 查看
最大的区别就是C风格的字符串是静态的,不可以动态变化,使用极为麻烦。
而C++的std::string类型动态管理,非常方便。
C风格字符串和char数组是不一样的,看下面两种定义:
char carr1 = {'a', 'b', 'c'};
char carr2 = {'a', 'b', 'c', '\0'};
看上面,carr2可以说成是C风格字符串,carr1就不是C风格字符串,C风格字符串必须要以'\0'结尾的。
string类是标准库的类,并不是内置类型,标准库就像是我们自己定义的类差不多的,string类型对象没有标配'\0'结尾的。如果需要用string类给C风格字符串赋值的话,后面是需要添加'\0'的。
您可能感兴趣的文章:
相关文章推荐
- C++学习笔记(二)C风格字符串和string类区别和联系
- (第四章)C风格字符串和string类里的字符串的区别 动态创建数组
- 浅析Python 3 字符串中的 STR 和 Bytes 有什么区别
- JavaSE(六)包装类、基本类型和字符串之间的转换、==和equals的区别
- 浅析函数式编程与命令式编程的区别(三)风格的区别
- 两种风格的字符串之间的比较
- 浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
- 驼峰命名法(CamelCase)和下划线风格(UnderScoreCase)字符串之间的转换工具类
- C风格字符串和string类的操作——从实现atoi函数开始
- 浅析jQuery(function(){})与(function(){})(jQuery)之间的区别
- string类 string.h头文件 cstring头文件区别以及读取一行字符串总结
- String字符串之间的比较与其他数据类型之间的比较区别
- 『C++ Primer学习笔记』Chapter 3——string对象、vector对象以及数组的配套类型,C风格字符串问题和处理区别
- 指针赋值 int a[5]={.... ...}, a 、&a[0]、 &a三者之间的区别 浅析 C/C++求职面试必备考点(五)
- 浅析echo(),print(),print_r(),return之间的区别
- 浅析echo(),print(),print_r(),return之间的区别
- 刚刚发现了整形指针和字符串指针之间的区别
- c++中string类字符串和c中char*/char[]型型字符串的区别
- C风格字符串与标准库类String 区别和转换
- C++ C 风格字符串与string类