目錄
函數strcmp與strncmp
以下是錯誤的示范:兩個指針字符型的指針不能直接進行比較
函數strchr與函數strrchr
函數strchr與函數strrchr與strstr函數三者對比
背景:如果說我們要比較兩個字符串是否相等,使用strcmp或者strncmp函數。在c語言中不能直接進程兩個字符串比較,必須借助strcmp或者strncmp函數。
函數strcmp與strncmp
功能:比較兩個字符的大小
如果相等則放回0;左邊大于右邊 返回1;左邊小于右邊返回-1;
比較兩個字符串有什么作用的,我們可以進行信息的匹配,如果時相等的那么就可以進行下一步的運行。在做項目的時候可以用到。
知識點:
- strcmp(const char *str1,const char *str2);str1和str2 是代表指向字符串的指針 是一個地址
- strncmp(const char *str1,congst char *str2 ,n); n是比較前n個字符是否相等

以下是錯誤的示范:兩個指針字符型的指針不能直接進行比較
下面的代碼if條件中是比較兩個指針所表示的地址是否相同。
#include <stdio.h>
#include <string.h>
int main()
{char *s = "abc";char *x = "abc";if(s==x) //不能直接進行字符串的筆記 這樣是比較兩個指針地址,而不是字符串相同{......}return 0;
}
函數strchr與函數strrchr
功能:在字符串中查找字符
- 頭文件#include
- strchr(const char *str,int c )
- strrchr(const char *str,int c)
- str是指向一個字符串的地址,c是待查字符 也可以是ascll碼的數字
- strchr函數是從左到右查找
- strrchr函數是從從右到左查找
- 如果查找成功返回該字符的地址
- 如果查找失敗返回NULL
函數strchr與函數strrchr與strstr函數三者對比
區別:strstr是查找字串 strchr是查找字符 strchr是查找字符
#include <stdio.h>
#include <string.h>
int main()
{char *s = "www.baidu.com";char *S = "www.weixin;.com";char *p = NULL;p = strchr(s, '.');printf("%s\n", p);p = strrchr(S,46); //46轉字符就是'.'printf("%s\n", p);return 0;
}