string.h头文件中常用的函数

C 库函数 - strcat()

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

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

//演示 strcat() 函数的用法
char str1[100];
char str2[100]; gets(str1); //输入abcd
strcat(str1, "efg"); //或者也可以这样写
//gets(str2); //输入efg
//strcat(str1, str2);

打印出的结果是abcdefg

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

C 库函数 - strcpy()

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

把 src 所指向的字符串复制到 dest

//演示 strcpy() 函数的用法
char str1[100];
char str2[100]; strcpy(str1, "abcd"); //用于字符串的输入
strcpy(str2, str1); //或字符串的拷贝

打印出的结果是abcd

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

C 库函数 - strcmp()

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

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

//演示 strcpy() 函数的用法
char str1[100];
char str2[100];
int flg; //记录strcmp()的返回值 strcpy(str1, "abc"); //输入abc
strcpy(str2, "xyz"); //输入xyz flg=strcmp(str1, str2); //以ASCALL码比较 if(flg > 0)
printf("str1 > str2");
else if(flg < 0)
printf("str1 < str2");
else if(flg == 0)
printf("str1 = str2");

打印出的结果是str1 < str2

返回值:

  • 如果返回值 < 0,则表示 str1 小于 str2
  • 如果返回值 > 0,则表示 str2 小于 str1
  • 如果返回值 = 0,则表示 str1 等于 str2

C 库函数 - strlen()

size_t strlen(const char *str)

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

其中size_t 这是无符号整数类型,它是 sizeof 关键字的结果

//演示 strlen() 函数的用法
char str[100];
int l; //记录字符串长度 strcpy(str,"abcd"); //输入abcd
l=strlen(str);

打印出的结果是4

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

c库函数- memset()

void *memset(void *str, int c, size_t n)

复制字符 c(一个无符号字符)到参数 str 所指向的字符串的前 n 个字符,通常用作批量赋值。

//演示 strlen() 函数的用法
char str[10]={'\0'};//全部初始化为0
int arr[10]={1,1,1,1,1,1,1,1,1,1};//全部初始化为1 memset(str,'a',5);//5*sizeof(char) //前5个值赋值为a
memset(str,'a',sizeof(str)-1); //所有值赋值为a //‘\0’结尾 memset(arr,0,5*sizeof(int)); //前5个值赋值为0;
memset(arr,0,sizeof(arr)); //所有值赋值为0; //注:第三个参数为赋值的字节数
//sizeof(数组名)为所有值,sizeof(类型)为一个值
//对数组来说,只能初始化为0,或者-1

打印出的结果是

//aaaaa
//aaaaaaaaa
//0 0 0 0 0 1 1 1 1 1
//0 0 0 0 0 0 0 0 0 0

返回值:该值返回一个指向存储区 str 的指针

扩展:

C 库函数 - memcpy()C 库函数memcpy()

void *memcpy(void *str1, const void *str2, size_t n)

从存储区 str2 复制 n 个字符到存储区 str1.

str2可从任意成员处开始,如memcpy(str1,str2+3, 6);// 从第 3 个字符开始复制,连续复制 6 个字符

返回值: 该函数返回一个指向目标存储区 str1 的指针

C 库函数 - memcmp(): C 库函数 - memcmp()

int memcmp(const void *str1, const void *str2, size_t n)

把存储区 str1 和存储区 str2 的前 n 个字节进行比较

返回值:

  • 如果返回值 < 0,则表示 str1 小于 str2
  • 如果返回值 > 0,则表示 str2 小于 str1
  • 如果返回值 = 0,则表示str1 等于 str2

以上为一些string.h头文件中常用的函数,资料来自菜鸟驿站C 标准库 - <string.h>

C语言常用字符串函数的更多相关文章

  1. C语言常用字符串函数总结

    ANSI C中有20多个用于处理字符串的函数: 注意:const 形参使用了const限定符,表示该函数不会改变传入的字符串.因为源字符串是不能更改的. strlen函数: 函数原型:unsigned ...

  2. php常用字符串函数小结

    php内置了98个字符串函数(除了基于正则表达式的函数,正则表达式在此不在讨论范围),能够处理字符串中能遇到的每一个方面内容,本文对常用字符串函数进行简单的小结,主要包含以下8部分:1.确定字符串长度 ...

  3. [转]MySQL常用Json函数和MySQL常用字符串函数

    MySQL常用Json函数:https://www.cnblogs.com/waterystone/p/5626098.html MySQL常用字符串函数:https://www.cnblogs.co ...

  4. js进阶js中支持正则的四个常用字符串函数(search march replace split)

    js进阶js中支持正则的四个常用字符串函数(search march replace split) 一.总结 代码中详细四个函数的用法 search march replace split 二.js进 ...

  5. Delphi常用字符串函数

    Delphi常用字符串函数   一.字符转换函数1.ord(input[i])返回字符表达式 input 左端起第 I 字符的ASCII 码值.2.CHAR()将ASCII 码转换为字符.如果没有输入 ...

  6. C语言入门(6)——C语言常用数学函数

    在编码过程中会经遇到数学运算,幸运的是C语言提供了非常丰富的数学函数库. 在数学中使用函数有时候书写可以省略括号,而C语言要求一定要加上括号,例如sin(pi/2)这种形式.在C语言的术语中,pi/2 ...

  7. MySQL最常用字符串函数

    字符串函数 是最常用的的一种函数,在一个具体应用中通常会综合几个甚至几类函数来实现相应的应用: 1.LOWER(column|str):将字符串参数值转换为全小写字母后返回 mysql> sel ...

  8. MySQL常用字符串函数

    字符串函数 是最常用的的一种函数,在一个具体应用中通常会综合几个甚至几类函数来实现相应的应用: 1.LOWER(column|str):将字符串参数值转换为全小写字母后返回 mysql> sel ...

  9. PHP 常用字符串函数整理

    PHP语言中的字符串函数也是一个比较易懂的知识.今天我们就为大家总结了将近12种PHP字符串函数,希望对又需要的朋友有所帮助,增加读者朋友的PHP知识库. 1.查找字符位置函数 strpos($str ...

随机推荐

  1. 在linux上oracle服务启动停止详细

    转至:https://www.cnblogs.com/baihuitestsoftware/articles/6365431.html 在CentOS 6.3下安装完Oracle 10g R2,重开机 ...

  2. 用python构建一个多维维数组

    用python构建一个二维数组 解法? 方法1: num_list=[0]*x//表示位创建一个一维数组为num_lis[x],且数组中的每一项都为0 num_list=[[0]*x for i in ...

  3. 携程applo配置

    1.官网文档 https://github.com/ctripcorp/apollo/wiki/%E5%88%86%E5%B8%83%E5%BC%8F%E9%83%A8%E7%BD%B2%E6%8C% ...

  4. shell 和python 实现ftp文件上传或者下载

    一.shell脚本 #####从ftp服务器上的/home/data 到 本地的/home/databackup#####!/bin/bashftp -n<<!open 172.168.1 ...

  5. qt(二)

    主程序入口: #include <iostream> #include <QApplication> #include "MainWindow.h" int ...

  6. foreach 改变集合时不能使用

    使用foreach循环遍历list集合时,出现Collection was modified; enumeration operation may not execute.这个错误,查了半天才发现是当 ...

  7. 矩池云 | 神经网络图像分割:气胸X光片识别案例

    在上一次肺炎X光片的预测中,我们通过神经网络来识别患者胸部的X光片,用于检测患者是否患有肺炎.这是一个典型的神经网络图像分类在医学领域中的运用. 另外,神经网络的图像分割在医学领域中也有着很重要的用作 ...

  8. VUE-表单验证

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Lua中如何实现类似gdb的断点调试—08支持通过包名称添加断点

    在前一篇中我们支持了通过函数名称来添加断点,我们同时也提到了在Lua中一个函数的名称的并不是确定的.准确的说,Lua中的函数并没有名称,所谓名称其实是保存这个函数值的变量的名称. 于是通过函数名称添加 ...

  10. [翻译] TensorFlow 分布式之论文篇 "Implementation of Control Flow in TensorFlow"

    [翻译] TensorFlow 分布式之论文篇 "Implementation of Control Flow in TensorFlow" 目录 [翻译] TensorFlow ...