c/c++ 字符串

C语言字符串:

本质是字符型数组 char *、char[]

以'\0'(整数0)结尾的一串字符

0和'\0'是相同的,但是和'0'不同,‘0’为一个字符,整数为对应的ASCII码

尽量使用'\0','\0'一定是一个字节,0可能是4个字节

string.h中有很多处理字符串的函数

两个相邻的字符串常量会被自动连接起来

不能用运算符对字符串进行计算

字符串常量存储于代码段而且只读!

使用字符串常量初始化的字符型指针变量会指向一个字符串常量

使用同一个字符串常量初始化的多个字符型指针变量,会指向同一块内存

使用字符串常量初始化的字符型指针变量本质是是一个const char *  

如果想要创建可修改的字符串,应该使用字符型数组 char s[]

数组型字符串适用:本地变量                                                         构造一个字符串

指针型字符串适用:函数参数、动态分配空间(malloc)              处理一个字符串

字符串可以表达为char* 的形式,char* 不一定是字符串(指针指向的是什么永远不确定)


字符串变量:

char *str = "Hello";

char world[] = "Hello";

char line[10] = "Hello";

a[10]最多可以接收9个字符

空字符串长度为1


字符串输入输出:

scanf("%s",string);

printf("%s",string);

scanf读入一个单词,到空格、tab或回车为止

字符串是有长度限制的,而scanf不检查输入的字符数量,所以scanf是不安全的,可以使用关键字做数量限制


c++中库函数:<cstring>

其中包含:

size_t strlen (const char *s);(返回字符串的长度,不包括“\0”)(return length of s)

char *strcpy (char *dest, const char *src);(return dest)

等函数。


c++字符串:string

库函数<string>

尽量使用string,抛弃char *

只有当要对内存进行操作或要使用byte *,才使用char *

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值