关于字符串的简要摘记

       虽然经常用到字符串的操作,但是经常在用的时候还是要搜一下许多函数的用法,总是记不住,而且点也很杂,所以觉得有必要写下来,加强一下记忆,顺便培养一下自己写博客的习惯,话不多说,写起;

       #define STRING_LEN   128

       字符串的初始化:char s[STRING_LEN] = “hello”;    (注:只能在字符串初始化的时候这样直接赋值)

                                      之前有这样写:char s[STRING_LEN] = {1&2};    最后加打印看到这样的结果,s = [];  字符串s还是空,


      给字符串赋值:1: 可以使用这几个函数,strcpy,memcpy,snprintf 

                                 

                                     snprintf 函数操作的对象 不限于字符串:虽然目的对象是字符串,但是源对象可以是字符串、也可以是任意基本类型的数据。这个函数主要用来实现 (字                                                      符串 或基本数据类型)向 字符串 的转换 功能。如果源对象是字符串,并且指定 %s 格式符,也可实现字符串拷贝功能

                                    memcpy:是内容的拷贝,将一个内存块的内容拷贝到另一个内存块,不限于字符串,要提供拷贝的长度;

                                     strcpy:是纯字符串的拷贝

                                     2:给字符串赋值为0:

                                       strcpy(s, "\0");                        输出结果:s = [];   //结果就是为空;

                                       strcpy(s, "0");                         输出结果:s = [0];  //给字符串赋值为0;


      测量字符串的长度:sizeof 和 strlen

                                      sizeof的值是在编译阶段就计算好的,所以这个不能用来计算动态空间的大小

                                                       数组——编译时分配的数组空间大小;
                                                      指针——存储该指针所用的空间大小(存储该指针的地址的长度,是长整型,应该为4);
                                                      类型——该类型所占的空间大小;
                                                      对象——对象的实际占用空间大小;
                                                     函数——函数的返回类型所占的空间大小。函数的返回类型不能是void。      

                                    strlen的值是函数,只有在执行时才生效,参数必须是char *, 遍历字符串,遇到"\0"结束;

                                     比如:char s[STRING_LEN] = “hello”;        sizeof(s) = STRING_LEN;//当然这样写不大妥,自己理解意思就好了;  strlen(s) = 5;


      字符串转整形或是整型转字符串的函数:atoi,itoa;


       解析字符串时可以用到的函数:strtok、strtok_r、strcat;

       查找一个字符串在另一个字符串中第一次出现的位置:strstr

      

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值