string.h的常见函数及其使用

一、strcpy和strncpy

1、strcpy函数的作用是将一个字符串复制到另一个字符串中(包括’\0’),并返回目标字符串。它的原型如下:

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

参数:dest — 要复制到的目标字符串;src — 要复制的源字符串。

2、示例代码:

    char str1[] = "Hello world!";
    char str2[100];
    strcpy(str2, str1);
    printf("str2: %s", str2);
    // 输出结果是:str2: Hello world!

3、strncpy函数和strcpy函数类似,不过它指定了要复制的字符数目。如果源字符串长度小于复制长度,目标字符串就用’\0’补齐。它的原型如下:

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

参数:dest — 要复制到的目标字符串;src — 要复制的源字符串;n — 要复制的字符数目。

4、示例代码:

    char str1[] = "Hello world!";
    char str2[100];
    strncpy(str2, str1, 5);
    printf("str2: %s", str2);
    // 输出结果是:str2: Hello

二、strcat和strncat

1、strcat函数的作用是将一个字符串追加到另一个字符串的末尾(包括’\0’),并返回目标字符串。它的原型如下:

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

参数:dest — 要追加到的目标字符串;src — 要追加的源字符串。

2、示例代码:

    char str1[100] = "Hello ";
    char str2[] = "world!";
    strcat(str1, str2);
    printf("str1: %s", str1);
    // 输出结果是:str1: Hello world!

3、strncat函数和strcat函数类似,不过它指定了要追加的字符数目。如果源字符串长度小于追加长度,目标字符串就用’\0’补齐。它的原型如下:

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

参数:dest — 要追加到的目标字符串;src — 要追加的源字符串;n — 要追加的字符数目。

4、示例代码:

    char str1[100] = "Hello ";
    char str2[] = "world!";
    strncat(str1, str2, 3);
    printf("str1: %s", str1);
    // 输出结果是:str1: Hello wor

三、strcmp和strncmp

1、strcmp函数的作用是比较两个字符串。如果两个字符串相等,返回0;如果第一个字符串小于第二个字符串,返回负数;如果第一个字符串大于第二个字符串,返回正数。它的原型如下:

    int strcmp(const char *s1, const char *s2);

参数:s1 — 要比较的第一个字符串;s2 — 要比较的第二个字符串。

2、示例代码:

    char str1[] = "Hello";
    char str2[] = "World";
    int result = strcmp(str1, str2);
    printf("result: %d", result);
    // 输出结果是:result: -15

3、strncmp函数和strcmp函数类似,不过它指定了要比较的字符数目。它的原型如下:

    int strncmp(const char *s1, const char *s2, size_t n);

参数:s1 — 要比较的第一个字符串;s2 — 要比较的第二个字符串;n — 要比较的字符数目。

4、示例代码:

    char str1[] = "Hello";
    char str2[] = "World";
    int result = strncmp(str1, str2, 3);
    printf("result: %d", result);
    // 输出结果是:result: 0

四、strlen

1、strlen函数的作用是返回字符串的长度(不包括’\0’)。它的原型如下:

    size_t strlen(const char *s);

参数:s — 要计算长度的字符串。

2、示例代码:

    char str[] = "Hello world!";
    size_t length = strlen(str);
    printf("length: %lu", length);
    // 输出结果是:length: 12

五、strstr

1、strstr函数的作用是在一个字符串中查找另一个子字符串第一次出现的位置,并返回该位置的指针。如果未找到子字符串,返回NULL。它的原型如下:

    char *strstr(const char *haystack, const char *needle);

参数:haystack — 要搜索的字符串;needle — 要搜索的子字符串。

2、示例代码:

    char str1[] = "Hello world!";
    char str2[] = "world";
    char *result = strstr(str1, str2);
    if(result){
        printf("result: %s", result);
    } else {
        printf("not found");
    }
    // 输出结果是:result: world!

六、memset

1、memset函数的作用是将一块内存区域设置为给定的值。它的原型如下:

    void *memset(void *s, int c, size_t n);

参数:s — 要设置的内存区域;c — 要设置的值(用无符号字符表示);n — 要设置的字节数。

2、示例代码:

    char str[100] = "hello";
    memset(str, 'A', 3);
    printf("str: %s", str);
    // 输出结果是:str: AAAllo

七、memcpy

1、memcpy函数的作用是将一个内存区域复制到另一个内存区域,它的原型如下:

    void *memcpy(void *dest, const void *src, size_t n);

参数:dest — 目标内存区域;src — 要复制的源内存区域;n — 要复制的字节数。

2、示例代码:

    char str1[] = "Hello";
    char str2[100];
    memcpy(str2, str1, 3);
    printf("str2: %s", str2);
    // 输出结果是:str2: Hel

八、总结

1、string.h库是C语言的标准库之一,包含了许多常用的字符串处理函数。

2、复制字符串的函数有strcpy和strncpy,追加字符串的函数有strcat和strncat,比较字符串的函数有strcmp和strncmp,计算字符串长度的函数有strlen,查找子字符串的函数有strstr,初始化内存的函数有memset,复制内存区域的函数有memcpy。

3、这些函数可以方便地处理字符串,并在C语言的开发中发挥重要的作用。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/248733.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-12 13:29
下一篇 2024-12-12 13:29

相关推荐

  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • Python中capitalize函数的使用

    在Python的字符串操作中,capitalize函数常常被用到,这个函数可以使字符串中的第一个单词首字母大写,其余字母小写。在本文中,我们将从以下几个方面对capitalize函…

    编程 2025-04-29
  • Python中set函数的作用

    Python中set函数是一个有用的数据类型,可以被用于许多编程场景中。在这篇文章中,我们将学习Python中set函数的多个方面,从而深入了解这个函数在Python中的用途。 一…

    编程 2025-04-29
  • 三角函数用英语怎么说

    三角函数,即三角比函数,是指在一个锐角三角形中某一角的对边、邻边之比。在数学中,三角函数包括正弦、余弦、正切等,它们在数学、物理、工程和计算机等领域都得到了广泛的应用。 一、正弦函…

    编程 2025-04-29
  • 单片机打印函数

    单片机打印是指通过串口或并口将一些数据打印到终端设备上。在单片机应用中,打印非常重要。正确的打印数据可以让我们知道单片机运行的状态,方便我们进行调试;错误的打印数据可以帮助我们快速…

    编程 2025-04-29
  • Python3定义函数参数类型

    Python是一门动态类型语言,不需要在定义变量时显示的指定变量类型,但是Python3中提供了函数参数类型的声明功能,在函数定义时明确定义参数类型。在函数的形参后面加上冒号(:)…

    编程 2025-04-29
  • Python定义函数判断奇偶数

    本文将从多个方面详细阐述Python定义函数判断奇偶数的方法,并提供完整的代码示例。 一、初步了解Python函数 在介绍Python如何定义函数判断奇偶数之前,我们先来了解一下P…

    编程 2025-04-29
  • Python实现计算阶乘的函数

    本文将介绍如何使用Python定义函数fact(n),计算n的阶乘。 一、什么是阶乘 阶乘指从1乘到指定数之间所有整数的乘积。如:5! = 5 * 4 * 3 * 2 * 1 = …

    编程 2025-04-29
  • 分段函数Python

    本文将从以下几个方面详细阐述Python中的分段函数,包括函数基本定义、调用示例、图像绘制、函数优化和应用实例。 一、函数基本定义 分段函数又称为条件函数,指一条直线段或曲线段,由…

    编程 2025-04-29
  • Python函数名称相同参数不同:多态

    Python是一门面向对象的编程语言,它强烈支持多态性 一、什么是多态多态是面向对象三大特性中的一种,它指的是:相同的函数名称可以有不同的实现方式。也就是说,不同的对象调用同名方法…

    编程 2025-04-29

发表回复

登录后才能评论