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. 【剑指offer】14、剪绳子
  2. 一周焦点 | 最强AI芯片麒麟980发布;前端开发者将被取代?
  3. java md5 ios_iOS 自带MD5
  4. 学科网站建设的尝试与思考
  5. mysql主从表结构差异_mysqldiff对比主从表结构是否一致
  6. linux shell脚本备份mysql数据库
  7. OK335x mksd.sh hacking
  8. php amp 26472,汉字与UNICODE的转换 通过文件操作
  9. MATLAB获取字符串中两个特定字符之间的内容
  10. latex中嵌入视频文件
  11. html 狗头小游戏祝大家情人节快乐
  12. Python3对多股票的投资组合进行分析
  13. 数据产品经理新人的工作笔记学习
  14. Google搜索又变聪明了 Baidu你还能HOLD住吗
  15. 《回话的技术》读后感
  16. 人生需要执著——从二本三战到985博士
  17. Deep Learning 效率神器推荐
  18. Mydrivers: DVD Jon出手,绕过ATT激活iPhone
  19. 数据中心巨头维谛技术(Vertiv)的进击:专业、定制化的力量
  20. python无限制邮件群发软件_收藏 - 使用Python通过SMTP协议群发/单发邮件方法

热门文章

  1. 多C++标准版本指定
  2. Windows Embedded CE 6.0开发初体验(三)设置Boot-loader
  3. matlab可达矩阵 结果,matlab求可达矩阵
  4. post postman 传递数组对象_如何使用postman做接口测试
  5. 计算机组装与维护模拟测试题三答案,春季高考信息技术模拟题3(计算机组装与维修部分含答案)...
  6. 【转】DICOM:DICOM三大开源库对比分析之“数据加载”
  7. 【转】对ASP.NET程序员非常有用的85个工具
  8. 【转】azure认证路线以及学习资源
  9. 什么是事务、事务特性、事务隔离级别、spring事务传播特性
  10. mybatis plus 事务管理器_SpringBoot第七篇:springboot开启声明式事务