字符串函数讲解(C语言笔记,建议收藏!!!)

1、gets函数

2、puts函数

3、strcat函数

4、strcpy函数(strncpy函数)

5、strcmp函数(strncmp函数)

6、strlen函数

7、strlwr函数

8、strupr函数

9、strstr函数

注意:在使用字符串处理函数时,一定要使用  #include  开头

1、gets函数
其形式为:gets(字符数组)——输入字符串的函数

作用是从终端输入一个字符串到字符数组,并且得到一个函数值。

2、puts函数
其形式为:puts(字符数组)——输出字符串的函数

作用是将一个字符串(以‘\0’结束的字符序列)输出到终端。

 
3、strcat函数
其形式为:strcat(字符数组1,字符数组2)——字符串连接的函数

作用是把两个字符数组中的字符串连接起来,把字符串2连接到字符串1的后面,结果放在字符数组1中。

4、strcpy函数(strncpy函数)
其形式为:strcpy(字符数组1,字符串2)——字符串复制的函数

作用是将字符串2复制到字符数组1中去。

strcpy(字符数组1,字符串2,n)——字符串选择复制的函数

n:表示将字符串2中的n个单个字符复制到字符数组1中,最少为0个,最多不能超过字符串2的长度。作用与strcpy函数差不都,都是字符串复制函数。

大家可以自己试一试,源码

#include
#include
int main(){
    char str1[10] ="";     //定义空数组str1
    char str2[10] = "kgtj";//定义数组str2
 
    strncat(str1, str2, 1);
 
    printf("%s\n", str1);
 
    return 0;
}
 

5、strcmp函数(strncmp函数)
其形式为:strcmp(字符数组1,字符串2)——字符串比较的函数

因为字符串不能用等号来比较大小,所以就用strcmp函数来比较!!!!!!

比较规则:

(1)如果全部字符相同,则认为两个字符串相等;

(2)若出现不相同的字符,则以第一对不相同的字符比较结果为准。('a'<'z';'A'<'Z')。

比较的结果由函数值带回:

(1)如果字符串1与字符串2相同,则函数值为0。

(2)如果字符串1 > 字符串2,则函数值返回一个正数。

(3)如果字符串1 < 字符串2,则函数值返回一个负数。

strncmp(字符数组1,字符串2,n)——字符串选择比较的函数

n:选择字符串的前n个字符进行比较,定义和strcmp一样。

(1)如果字符串1与选择的字符串2相同,则函数值为0。

(2)如果字符串1 > 选择的字符串2,则函数值返回一个正数。

(3)如果字符串1 < 选择的字符串2,则函数值返回一个负数。

6、strlen函数
其形式为:strlen(字符数组)——测字符串长度的函数

作用是测试字符串长度的函数,函数的值为字符串实际的长度(不包括 '\0' 在内)。

strlen也可以直接测试字符串常量的长度

7、strlwr函数
其形式为:strlwr(字符串)——转换为小写的函数

该函数的作用是将字符串中的大写字母转换成小写字母。

8、strupr函数
其形式为:strupr(字符串)——转换为大写的函数

该函数的作用是将字符串中的小写字母转换成大写字母。

9、strstr函数
其形式为:strstr(字符串1,字符串2)——查找字符串的函数

函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。

如果找到该数组,就会从找到的地方开始输出;

#include
#include  
int main(){
    char a[] = "abcdefg";
    char b[] = "bc";
 
    char* ret = strstr(a, b);
 
    if (ret == NULL){
        printf("Can not find!\n");
    }
    else{
        printf("%s\n", ret);  //输出 bcdefg
    }
 
    return 0;
}

你可能感兴趣的:(C++,c语言,笔记,开发语言,c++,算法)