char *strcat(char *dest, const char *src)

功能
把 src 所指向的字符串追加到 dest 所指向的字符串的结尾。

参数:
dest – 指向目标数组,该数组包含了一个 C 字符串,且足够容纳追加后的字符串。
src – 指向要追加的字符串,该字符串不会覆盖目标字符串。

返回值:
该函数返回一个指向最终的目标字符串 dest 的指针。

实例:

#include <stdio.h>
#include <string.h>int main ()
{char src[50], dest[50];strcpy(src,  "This is source");strcpy(dest, "This is destination");strcat(dest, src);printf("最终的目标字符串: |%s|", dest);return(0);
}

输出:

 最终的目标字符串: |This is destinationThis is source|

char *strncat(char *dest, const char *src, size_t n)

功能
把 src 所指向的字符串追加到 dest 所指向的字符串的结尾,直到 n 字符长度为止。

参数:
dest – 指向目标数组,该数组包含了一个 C 字符串,且足够容纳追加后的字符串,包括额外的空字符。
src – 要追加的字符串。
n – 要追加的最大字符数。

返回值:
该函数返回一个指向最终的目标字符串 dest 的指针。

实例:

#include <stdio.h>
#include <string.h>int main ()
{char src[50], dest[50];strcpy(src,  "This is source");strcpy(dest, "This is destination");strncat(dest, src, 15);printf("最终的目标字符串: |%s|", dest);return(0);
}

输出:

 最终的目标字符串: |This is destinationThis is source|

char *strchr(const char *str, int c)

功能
在参数 str 所指向的字符串中搜索第一次出现字符 c(一个无符号字符)的位置。

参数:
str – 要被检索的 C 字符串。
c – 在 str 中要搜索的字符。

返回值:
该函数返回在字符串 str 中第一次出现字符 c 的位置,如果未找到该字符则返回 NULL。

实例:

#include <stdio.h>
#include <string.h>int main ()
{const char str[] = "http://www.runoob.com";const char ch = '.';char *ret;ret = strchr(str, ch);printf("|%c| 之后的字符串是 - |%s|\n", ch, ret);return(0);
}

输出:

 |.| 之后的字符串是 - |.runoob.com|

int strcmp(const char *str1, const char *str2)

功能
把 str1 所指向的字符串和 str2 所指向的字符串进行比较。

参数:
str1 – 要进行比较的第一个字符串。
str2 – 要进行比较的第二个字符串。

返回值:
如果返回值小于 0,则表示 str1 小于 str2。
如果返回值大于 0,则表示 str1 大于 str2。
如果返回值等于 0,则表示 str1 等于 str2。

实例:

#include <stdio.h>
#include <string.h>int main ()
{char str1[15];char str2[15];int ret;strcpy(str1, "abcdef");strcpy(str2, "ABCDEF");ret = strcmp(str1, str2);if(ret < 0){printf("str1 小于 str2");}else if(ret > 0) {printf("str1 大于 str2");}else {printf("str1 等于 str2");}return(0);
}

输出:

 str1 大于 str2、

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

功能
把 str1 和 str2 进行比较,最多比较前 n 个字节。

参数:
str1 – 要进行比较的第一个字符串。
str2 – 要进行比较的第二个字符串。
n – 要比较的最大字符数。

返回值:
如果返回值小于 0,则表示 str1 小于 str2。
如果返回值大于 0,则表示 str1 大于 str2。
如果返回值等于 0,则表示 str1 等于 str2。

实例:

#include <stdio.h>
#include <string.h>int main ()
{char str1[15];char str2[15];int ret;strcpy(str1, "abcdef");strcpy(str2, "ABCDEF");ret = strncmp(str1, str2, 4);if(ret < 0){printf("str1 小于 str2");}else if(ret > 0) {printf("str2 小于 str1");}else {printf("str1 等于 str2");}return(0);
}

输出:

 str2 小于 str1

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

功能
把 src 所指向的字符串复制到 dest。需要注意的是如果目标数组 dest 不够大,而源字符串的长度又太长,可能会造成缓冲溢出的情况。

参数:
dest – 指向用于存储复制内容的目标数组。
src – 要复制的字符串。

返回值:
该函数返回一个指向最终的目标字符串 dest 的指针。

实例:

#include <stdio.h>
#include <string.h>int main ()
{char str1[]="Sample string";char str2[40];char str3[40];strcpy (str2,str1);strcpy (str3,"copy successful");printf ("str1: %s\nstr2: %s\nstr3: %s\n",str1,str2,str3);return 0;
}

输出:

str1: Sample string
str2: Sample string
str3: copy successful

char *strncpy(char *dest, const char *src, size_t n)

功能
把 src 所指向的字符串复制到 dest,最多复制 n 个字符。当 src 的长度小于 n 时,dest 的剩余部分将用空字节填充。

参数:
dest – 指向用于存储复制内容的目标数组。
src – 要复制的字符串。
n – 要从源中复制的字符数。

返回值:
该函数返回一个指向最终的目标字符串 dest 的指针。

实例:

#include <stdio.h>
#include <string.h>int main()
{char src[40];char dest[12];memset(dest, '\0', sizeof(dest));strcpy(src, "This is runoob.com");strncpy(dest, src, 10);printf("最终的目标字符串: %s\n", dest);return(0);
}

输出:

最终的目标字符串: This is ru

size_t strlen(const char *str)

功能
计算字符串 str 的长度,直到空结束字符,但不包括空结束字符。

参数:
str – 要计算长度的字符串。

返回值:
该函数返回字符串的长度。

实例:

#include <stdio.h>
#include <string.h>int main ()
{char str[50];int len;strcpy(str, "This is runoob.com");len = strlen(str);printf("|%s| 的长度是 |%d|\n", str, len);return(0);
}

输出:

|This is runoob.com| 的长度是 |18|

string相关库函数相关推荐

  1. JAVA基础5——与String相关的系列(1)

    与String相关的系列 String, 是JAVA中常见的一个引用类型,且其具有一定的特殊性. String类型被设置为final型,即不可继承,也就不可修改其中的实现. String可以改变吗 S ...

  2. boost::mpl::string相关的测试程序

    boost::mpl::string相关的测试程序 实现功能 C++实现代码 实现功能 boost::mpl::string相关的测试程序 C++实现代码 #include <string> ...

  3. c++ string 长度限制_面试中要会的String相关问题

    在java面试中,String是面试官最喜欢问,甚至是最先问的问题.这是在考验你的基本功,也是考验你的能力.String都答不上来,下面就不用继续了.我总结一些String相关的试题,希望对大家在以后 ...

  4. 嵌入式--RTC实时时钟原理及相关库函数功能

    一.RTC实时时钟原理 1.RTC实时时钟是一个独立的定时器,可以提供日期时间或者闹钟的功能.其核心是通过32位可编程计数器RTC_CNT计数来进行时间配置. 2.图1中RTCCLK为RTC时钟源,其 ...

  5. LLVM中的String相关

    LLVM中的String相关 1. 传递字符串(`StringRef` 类和 `Twine` 类) 1.1 `StringRef`类 1.1.1 StringRef.getAsInteger()成员函 ...

  6. 大数据技术之_31_Java 面试题_02_== 和 equals 有什么区别 + String 相关 + 多态 + 传值 + static 加载机制 + 线程

    大数据技术之_31_Java 面试题_02 1.== 和 equals 有什么区别? 2.为什么需要同时覆写 hashCode 和 equals 方法? 3.为什么用 eclipse 重写 hashC ...

  7. java String相关

    String相关 字符型常量和字符串常量的区别 形式上: 字符常量是单引号引起的一个字符 字符串常量是双引号引起的若干个字符 含义上: 字符常量相当于一个整形值(ASCII值),可以参加表达式运算 字 ...

  8. Java字符串String相关2

    先在定义字符串: 1 String str="字符串常量"; 2 String str1=new String("字符串常量"); 3 String str2= ...

  9. java中字符 的含义 有什么作用_Java中字符串常见题之String相关讲解

    今天给大家带来的是在面试中经常被问到的一道题: 无论在Java还是Android中,String是一个很常见的类,但是大家真的很了解吗,我这里有几个题: 1. String str1 = " ...

最新文章

  1. php百度自动推送代码,怎么设置百度自动推送代码安装教程-百度自动推送好处解析...
  2. docker image镜像的发布
  3. python 中文识别 不用tesseract_Python——验证码识别 Pillow + tesseract-ocr
  4. (JAVA)集合Collection3
  5. python程序员怎么面试_Python程序员面试,这些问题你必须提前准备!
  6. Javascript的两种“单引号”
  7. java 程序是由什么组成的 java_【问答题】一个典型的JAVA程序结构是由什么组成。...
  8. 【问题1】项目中缓存是如何使用的?为什么要用缓存?
  9. Eclipse详细安装教程
  10. 软件测试职业比赛,我院首届软件测试职业技能大赛圆满落幕
  11. 《2020年度中国数据竞赛年鉴》发布!
  12. 遭遇nat.exe,socks.exe,USP10.dll,BOSC.dll,kb080387.CNT,~ctwxw.txt等1
  13. excel怎么设置打印区域_学会Excel分页符设置,打印区域自由选择
  14. 阿里巴巴字体图标库使用方法【前端类超详细】
  15. 兖州计算机老师,兖州最美教师 | 风采展示(二)
  16. MATLA 复制文件到指定文件夹
  17. 改了dns服务器有没有影响,dns改成114有危险吗_dns改了有什么影响
  18. 趣味测评对话交互版流量主小程序开发
  19. C# 有什么实用的第三方库吗?
  20. ffmpeg 各版本下载以及在线安装

热门文章

  1. 如何在UE4中创建线程
  2. Asterisk 可加载模块
  3. Linux编程练习 --进程间通信1--无名管道
  4. 沃尔沃挖机计算机故障,沃尔沃挖掘机常见故障及原因总结,用户们可以看看
  5. 查询学生选修课程管理系统java_JAVA数据库课程设计学生选课管理系统的
  6. g5420 win7集显驱动_台式机装WIN7?雷我已经趟完了
  7. 神经网络与深度学习——TensorFlow2.0实战(笔记)(二)(Anaconda软件使用)
  8. 【转】异步编程系列(Thread、Task、async/await、ajax等)
  9. ASP.NET Core管道深度剖析(1):采用管道处理HTTP请求
  10. 24组合模式(Composite Pattern)