头文件 <string.h>

1. char *strstr(const char *str1, const char *str2);      判断str2是否为str1的子串 

//str1中包含str2子串情况

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char *str1 = "hello world!";
char *str2 = "world";

char *p = strstr(str1,str2);

printf("str1 = %p :%s\n",str1,str1);
printf("str2 = %p :%s\n",str2,str2);
printf("p = %p :%s\n",p,p);

return 0;
}

 输出结果

//str1中不包含str2子串情况

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char *str1 = "hello world!";
char *str2 = "world";

char *p = strstr(str2,str1);

printf("str1 = %p :%s\n",str1,str1);
printf("str2 = %p :%s\n",str2,str2);
printf("p = %p :%s\n",p,p);

return 0;
}

 输出结果:

2. char *strcat(char *dest, const char *src); 

将字符串src头拼接在dest的'\0'位置,在重新拼接的字符串后重新添加 '\0'  ;注意事项dest空间足够大

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char dest[20] = "hello";
char *src = "world";
char *p = strcat(dest,src);
printf("dest = %p :%s\n",dest,dest);
printf("src = %p :%s\n",src,src);
printf("p = %p :%s\n",p,p);
return 0;
}

 运行结果:dest 要足够大不然包段错误

3. char *strncat(char *dest, const char *src, size_t n);  

把src所指字符串的前n个字符添加到dest所指字符串的结尾处,并覆盖dest所指字符串结尾的'\0',从而实现字符串的连接

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char dest[10] = "hello ";
char *src = "world";
char *p = strncat(dest,src,3);
printf("dest = %s\n",dest);
printf("src = %s\n",src);
printf("p = %s\n",p);
return 0;
}

 输出结果:

4. char *strcpy(char *dest, const char *src);

把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char dest[20] = "hello world!";
char *src = "world";
char *p = strcpy(dest,src);
printf("dest = %p :%s\n",dest,dest);
printf("src = %p :%s\n",src,src);
printf("p = %p :%s\n",p,p); int len = sizeof(dest);
int i=0;
printf("dest[] = ");
for(i=0;i<len;i++)
{
printf("%c",dest[i]);
}
putchar(10);
printf("十进制打印\n");
for(i=0;i<len;i++)
{
printf("%d\n",dest[i]);
}
putchar(10);
return 0;
}

 输出结果:

5. char *strncpy(char *dest, const char *src, size_t n);

把src所指向的字符串中以src地址开始的前n个字节复制到dest所指的数组中,并返回被复制后的dest。

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char dest[20] = "hello";
char *src = "world";
char *p = strncpy(dest,src,1);
printf("dest = %p :%s\n",dest,dest);
printf("src = %p :%s\n",src,src);
printf("p = %p :%s\n",p,p); return 0;
}

输出结果:

6.  int strcmp(const char *str1, const char *str2);

若str1=str2,则返回零;
若str1<str2,则返回负数;
若str1>str2,则返回正数。
 

7.  int strncmp(const char *str1, const char *str2, size_t n);

str1, str2 为需要比较的两个字符串,n为要比较的字符的数目。

#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
char dest[20] = "hello world!";
char *src = "hellod";
int num = strncmp(src,dest,4);
printf("num = %d\n",num);
return 0;
}

  

 8.  字符串分割函数

char *strtok(char *str, const char *delim);

char *strtok_r(char *str, const char *delim, char **saveptr);

C 常见字符串操作函数的更多相关文章

  1. JavaScript中常见的字符串操作函数及用法

    JavaScript中常见的字符串操作函数及用法 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信 ...

  2. LoadRunner中常用的字符串操作函数

    LoadRunner中常用的字符串操作函数有:                strcpy(destination_string, source_string);               strc ...

  3. 转:C语言字符串操作函数 - strcpy、strcmp、strcat、反转、回文

    转自:C语言字符串操作函数 - strcpy.strcmp.strcat.反转.回文 C++常用库函数atoi,itoa,strcpy,strcmp的实现 作者:jcsu C语言字符串操作函数 1. ...

  4. C语言的常用字符串操作函数(一)

    一直做的是单片机相关的程序设计,所以程序设计上更偏向底层,对于字符串的操作也仅限于液晶屏幕上的显示等工作,想提高下字符串操作的水平,而不是笨拙的数组替换等方式,翻看帖子发现C语言的字符串操作函数竟然这 ...

  5. linux makefile字符串操作函数 替换subst、模式替换patsubst、去首尾空格strip、查找字符串findstring、过滤filter、反过滤filter-out、排序函数sort、取单词word、取单词串wordlist、个数统计words

    1.1       字符操作函数使用 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能.make所支持的函数也不算很多,不过已经足够我们的操作了.函数调用后,函 ...

  6. mysql常用字符串操作函数大全,以及实例

    今天在论坛中看到一个关于mysql的问题,问题如下 good_id     cat_id12654         665,56912655         601,4722 goods_id是商品i ...

  7. Postgresql 字符串操作函数

    样例测试: update property set memorial_no = btrim(memorial_no, ' ') where memorial_no like ' %' 或:update ...

  8. Sql字符串操作函数

    1.去空格函数 (1).LTRIM() 把字符串头部的空格去掉. (2).RTRIM() 把字符串尾部的空格去掉. 2.字符转换函数(1).ASCII()返回字符表达式最左端字符的ASCII 码值.在 ...

  9. C语言字符串操作函数 - strcpy、strcmp、strcat、反转、回文

    原文:http://www.cnblogs.com/JCSU/articles/1305401.html C语言字符串操作函数 1. 字符串反转 - strRev2. 字符串复制 - strcpy3. ...

随机推荐

  1. 1.4 React 组件生命周期

    1.4.1 组件 React 中组件有自己的生命周期方法,简单理解可以为组件从 出生(实例化) -> 激活 -> 销毁 生命周期 hook.通过这些 hook 方法可以自定义组件的特性. ...

  2. strlen、strcpy和strcmp源码

    1.不使用库函数实现strcpy #include <assert.h> char *strcpy(char *dst, const char *src) { assert((dst != ...

  3. 拾遗:Go 代码结构

    #define @ $ 概述 Go 编码通常将所有代码放置在同一个工作区 一个工作区包含多个版本仓库,使用 Git 等工具控制 每个仓库包含一个或多个包 每个包由同一目录中的一份或多份源代码组成 包的 ...

  4. 自从阿里买了Flink母公司以后,你不懂Flink就out了!

    个免费报名权限 Ps:小助理手动给大家发送资料,精力有限,仅限前100名免费领取,这份资料对于想要提升大数据技能进阶的小伙伴来说,将会是一份不可或缺的宝贵资料. 特别感谢飞总的部分原创支持!

  5. nuxt 利用lru-cache 做服务器数据请求缓存

    // 运行与服务端的js // node.js lru-cache import LRU from 'lru-cache' const lruCache = LRU({ // 缓存队列长度 max: ...

  6. 一.Python特点

    python第一节 简介 Python介绍 什么样的语言? 解释性语言:开发中没有编译的环节 交互式语言:在命令提示行执行python引擎,直接执行代码 面向对象语言:支持面向对象 优点 a.易学 b ...

  7. linux 7 系统查询相关

    今天 领导让我整理一下查询关于系统信息的一些命令,查找并验证了之后,我发上来给大家分享一下. 1. #uname –a显示电脑及操作系统信息2. #cat /proc/version查看正在运行的内核 ...

  8. 【颓废篇】Py:从零开始的poj自动提交

    之前学习了一些python的爬虫技术... 已经可以通过python来水blog的阅读量了 你知道的太多了, 然而你看我这个blog惨不忍睹的访问量, 有人吗? 有人吗? 今天突然又双叒叕心血来潮想写 ...

  9. Linux常用命令大全(很全面)

    最近都在和Linux打交道,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大.我将我了解到的命令列举一 ...

  10. vue 外卖app (1) 项目目录介绍

    api 与后台交互文件夹 common 通用资源文件夹 components  非路由组件文件夹 filters   自定义过滤器模块文件夹 mock 模拟数据文件夹 pages  路由组件文件夹 r ...