C语言——字符函数和字符串函数(二)
📝前言:
上一���文章C语言——字符函数和字符串函数(一)对字符函数和字符串函数strlen,strcpy和strncpy,strcat和strncat进行了初步的讲解
这篇文章主要再讲解几个我们常用到的其他字符串函数(附上实例):
1,strcmp和strncmp
2,strstr
🎬个人简介:努力学习ing
📋个人专栏:C语言入门基础
🎀CSDN主页 愚润求学
🌄每日鸡汤:夜色难免黑凉,前行必有曙光
文章目录
- 一,strcmp和strncmp
- 1,strcmp
- 2,strncmp
- 二,strstr
一,strcmp和strncmp
头文件:
功能:逐个比较字符串中的字符
1,strcmp
我们先看一下对strcmp的介绍👇🏻
⭐对重要的内容解读一下与数理:
●功能(执行过程):
1,从每个字符串的第一个字符开始依次进行字符的对应比较
2,如果字符相等,则进行下一个字符的比较
●返回值:
1,两个字符串的内容完全相同时,返回0
2,当出现对应字符不相等时:
若str1中的字符(ASCII值)> str2中的字符,返回>0的数字
若str1中的字符(ASCII值)> str2中的字符,返回 char arr1[] = "abcd"; char arr2[] = "abcd"; char arr3[] = "abc"; char arr4[] = "abd"; printf("%d\n", strcmp(arr1, arr2)); printf("%d\n", strcmp(arr1, arr3)); printf("%d\n", strcmp(arr1, arr4)); return 0; } p我们让arr1 分别与 arr2,arr3,arr4进行比较/pp依据我们上面的学习,我们可以做出一下判断:/pp1,arr1和arr2完全相同,所以应该返回0/pp2,arr1和arr3相比,前3个字符相同,mark第四个字符‘d’>‘\0’,所以应该返回一个>0的数字
3,arr1和arr4相比,前2个字符ab相同,但是,第三个字符‘c’ char arr1[] = "abcd"; char arr2[] = "abcd"; char arr3[] = "abc"; char arr4[] = "abd"; printf("%d\n", strncmp(arr1, arr2,3)); printf("%d\n", strncmp(arr1, arr3,3)); printf("%d\n", strncmp(arr1, arr4,3)); return 0; } char str1[] = "abcdabcd"; char str2[] = "abc\0dabcd"; char str[] = "bcd"; //在str1里面找str if (strstr(str1, str) == NULL) printf("没找到\n"); else printf("%s\n", strstr(str1, str)); //在str2里面找str if (strstr(str2, str) == NULL) printf("没找到\n"); else printf("%s\n", strstr(str2, str)); return 0; }