您的位置:首页 > 编程语言 > C语言/C++

c/c++ 字符 字符串

2013-05-01 09:47 260 查看
string类型是C里面没有的,C++为了强化对字符串的操作,专门设定的string类。

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中:
可以直接使用>、<等等比较字符串大小
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: