c/c++ 字符 字符串
2013-05-01 09:47
260 查看
string类型是C里面没有的,C++为了强化对字符串的操作,专门设定的string类。
C中定义一个字符常量,可以赋值给一个字符变量,但是不能将字符串常量赋值给字符变量。(可以使用数组或指针)
字符常量占一个字节的存储空间,字符串常量占的存储空间为字符串中的字节数+1,因为需要字符串结束标识符‘\0'
字符数组
字符结束标志' \0 '一般为系统自动加上,所以赋值是一般无须指定数组长度,系统自行处理。
字符串指针
字符串指针变量 字符数组 区别
1)字符串指针变量是一个变量,存放字符串首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间并一'\0'结束;
字符数组是由若干个数组元素组成,用来存放整个字符串。
2)字符串指针:
字符串比较
C中:str1 > str2 ; 非法的
可以借用函数strcmp()
strcmp(str1, str2)C++z中:
可以直接使用>、<等等比较字符串大小
C中定义一个字符常量,可以赋值给一个字符变量,但是不能将字符串常量赋值给字符变量。(可以使用数组或指针)
char c = 'a' ; char c = "i miss you" ; (错) --> char *c = "i miss you" ;
字符常量占一个字节的存储空间,字符串常量占的存储空间为字符串中的字节数+1,因为需要字符串结束标识符‘\0'
字符数组
char a[] = "i miss you" ;
字符结束标志' \0 '一般为系统自动加上,所以赋值是一般无须指定数组长度,系统自行处理。
字符串指针
char *p = "i miss you" ;定义一个字符指针p,指向字符串首地址。
字符串指针变量 字符数组 区别
1)字符串指针变量是一个变量,存放字符串首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间并一'\0'结束;
字符数组是由若干个数组元素组成,用来存放整个字符串。
2)字符串指针:
char *p = "i miss you" ;可改写为:
char *p; p = "i miss you";字符数组:
char c[] = "i miss you" ;不可以改写为:
char c[20]; c = "i miss you" ;只能对数组元素逐个赋值。
字符串比较
C中:str1 > str2 ; 非法的
可以借用函数strcmp()
strcmp(str1, str2)C++z中:
可以直接使用>、<等等比较字符串大小
相关文章推荐
- C/C++中,为什么字符串可以赋值给字符指针变量,单引号和双引号的区别
- 字符与字符串操作——Windows via C/C++
- (C++)剑指offer-54:字符流中第一个不重复的字符(字符串)
- C++字符串分割,分割符号可为任意字符,且可连续出现多个
- c++将字符数组转成字符串
- C++查找字符在字符串中出现的次数
- C++获取某一任意字符串每一个字符连续出现次数并打印在控制台上
- c/c++字符转换成字符串
- char, wchar_t, TCHAR 字符全总结 & c++字符串操作经验集
- C++实现一个栈,出栈,入栈,返回最小值 时间复杂度为O(1),查找字符串中第一个重复出现的字符
- C++统计字符串中的小字符串个数
- 解析UTF8字符串,并截取每个字符到vector(C++代码)
- (32)'c++:COMPLETE REFERENCE' 第一部分 第四章(数组和以空字符结束的字符串) 第七节
- C++删除字符串中特定的字符
- C/C++字符串与字符数组
- 《Windows Via C/C++》边学习,边翻译(六)操作字符和字符串-5
- C/C++中字符串String及字符操作方法
- C/C++(字符串处理)字符指针、字符数组用法大总结
- [C++]_[获取Utf8字符串的字符个数和子字符串]