String.h中比较常用的函数

字符串在我们程序中出现的频率很高,关于字符串的函数也是很多的,我们今天来介绍string.h头文件中的几个常用的函数:
1.strlen

函数名:strlen 
功 * 能:求得字符串的长度 
说 * 明:strlen(str)为字符串str的长度 
实 * 例:
#include <stdio.h>
#include <string.h>
int main()
{
    char str[] = "I love Acm";
    printf("%d\n",strlen(str));//输出结果为 10

    return 0;
}

2.strcpy

函数名:strcpy 
功 * 能:将一个字符串赋值给另一个字符串 
说 * 明:strlen(str1,str2)表示将str2赋值给str1 
实 * 例:
#include <stdio.h>
#include <string.h>
int main()
{
    char str1[] = "I love Acm";
    char str2[15];
    strcpy(str2,str1);
    printf("%s\n",str2);//输出结果为 I love Acm

    return 0;
}

3.strncpy

函数名:strncpy 
功 * 能:将一个字符串的前一部分字符赋给另一字符串 
说 * 明:strncpy(str1,str2,len) 表示将str2的前len个字符赋给str1 
实 * 例:
#include <stdio.h>
#include <string.h>
int main()
{
    char str1[] = "I Love Acm";
    char str2[20];
    strncpy(str2,str1,6);
    printf("%s\n",str2);
    //输出结果为I Love

    return 0;
}

4.strcmp

函数名:strcmp 
功 * 能:比较两个字符串的大小 
说 * 明:strcmp(str1,str2) 前者大则值为1,相同则为0,后者大则为-1 
实 * 例:
#include <stdio.h>
#include <string.h>
int main()
{
    char str1[] = "I love Acm";
    char str2[] = "I LOVE ACM";
    if(!strcmp(str1,str2))
        printf("they are equal\n");
    else if(strcmp(str1,str2)==1)
        printf("str1 is greater than str2\n");
    else
        printf("str1 is lower than str2\n");
    //输出结果为 str1 is greater than str2

    return 0;
}

5.strcat

函数名:strcat 
功 * 能:将两个字符串合为一 
说 * 明:strcat() 
实 * 例:
#include <stdio.h>
#include <string.h>
int main()
{
    char str1[20] = "I love";
    char str2[] = "Acm";
    strcat(str1," ");
    strcat(str1,str2);
    printf("%s\n",str1);
    /*str1和str2所指内存区域不可以重叠且
     str1必须有足够的空间来容纳str2的字符串。*/

    return 0;
}
 

发布了12 篇原创文章 · 获赞 49 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_36570733/article/details/90718472