欢迎访问宙启技术站
智能推送

常用字符串函数及用法总结

发布时间:2023-06-21 16:49:40

字符串是计算机中很常用的数据类型之一,几乎所有的编程语言都对字符串类型有着丰富的支持。而在字符串操作中也有许多经常使用的字符串函数,这些函数让我们可以方便地对字符串进行增删改查等操作。下面就来总结一下常用字符串函数及用法。

1. strlen函数:获取字符串长度

strlen是一个非常常用的函数,它可以用来获取字符串的长度。这个函数的定义如下:

size_t strlen(const char *str)

其中,参数str是一个指向要获取长度的字符串的指针,函数返回的是这个字符串的长度。下面是一个使用strlen函数的例子:

#include <stdio.h>
#include <string.h>

int main()
{
    char str[] = "hello world";
    int len = strlen(str);
    printf("字符串长度为:%d
", len);
    return 0;
}

2. strcpy函数:复制字符串

strcpy函数可以将一个字符串的内容复制到另一个字符串中。这个函数的定义如下:

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

其中,参数dest是一个指向目标字符串的指针,参数src是一个指向源字符串的指针。下面是一个使用strcpy函数的例子:

#include <stdio.h>
#include <string.h>

int main()
{
    char str1[] = "hello";
    char str2[10];
    strcpy(str2, str1);
    printf("复制后的字符串为:%s
", str2);
    return 0;
}

3. strcat函数:拼接字符串

strcat函数可以将一个字符串拼接到另一个字符串的末尾。这个函数的定义如下:

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

其中,参数dest是一个指向目标字符串的指针,参数src是一个指向源字符串的指针。下面是一个使用strcat函数的例子:

#include <stdio.h>
#include <string.h>

int main()
{
    char str1[] = "hello";
    char str2[] = "world";
    strcat(str1, str2);
    printf("拼接后的字符串为:%s
", str1);
    return 0;
}

4. strcmp函数:比较字符串

strcmp函数可以比较两个字符串是否相等。这个函数的定义如下:

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

其中,参数str1和str2都是指向要比较的字符串的指针。函数返回值为0表示两个字符串相等,大于0表示str1的字典序大于str2,小于0则表示str1的字典序小于str2。下面是一个使用strcmp函数的例子:

#include <stdio.h>
#include <string.h>

int main()
{
    char str1[] = "hello";
    char str2[] = "world";
    if (strcmp(str1, str2) == 0) {
        printf("两个字符串相等
");
    } else {
        printf("两个字符串不相等
");
    }
    return 0;
}

5. strchr函数:查找字符

strchr函数可以在一个字符串中查找指定的字符。这个函数的定义如下:

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

其中,参数str是要搜索的字符串,参数c是要查找的字符。如果找到了,则返回指向该字符的指针;否则返回NULL值。下面是一个使用strchr函数的例子:

#include <stdio.h>
#include <string.h>

int main()
{
    char str[] = "hello world";
    char *p = strchr(str, 'w');
    if (p != NULL) {
        printf("找到了字符:%c
", *p);
    } else {
        printf("字符串中没有这个字符
");
    }
    return 0;
}

6. strstr函数:查找字符串

strstr函数可以在一个字符串中查找指定的子串。这个函数的定义如下:

char *strstr(const char *str1, const char *str2)

其中,参数str1是要搜索的字符串,参数str2是要查找的子串。如果找到了,则返回指向该子串的指针;否则返回NULL值。下面是一个使用strstr函数的例子:

#include <stdio.h>
#include <string.h>

int main()
{
    char str[] = "hello world";
    char *p = strstr(str, "world");
    if (p != NULL) {
        printf("找到了子串:%s
", p);
    } else {
        printf("字符串中没有这个子串
");
    }
    return 0;
}

7. atoi函数:将字符串转换成整数

atoi函数可以将一个字符串转换成整数。这个函数的定义如下:

int atoi(const char *str)

其中,参数str是要被转换成整数的字符串。函数返回的是转换后的整数值。下面是一个使用atoi函数的例子:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    char str[] = "123";
    int num = atoi(str);
    printf("转换后的整数为:%d
", num);
    return 0;
}

8. atof函数:将字符串转换成浮点数

atof函数可以将一个字符串转换成浮点数。这个函数的定义如下:

double atof(const char *str)

其中,参数str是要被转换成浮点数的字符串。函数返回的是转换后的浮点数值。下面是一个使用atof函数的例子:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    char str[] = "3.14";
    double num = atof(str);
    printf("转换后的浮点数为:%f
", num);
    return 0;
}

总之,以上这些函数是字符串操作中的一些常用函数,熟练掌握它们,可以让我们方便快捷地操作字符串。