如何编写C语言代码判断字符串是否以特定子串str2开头?
- 内容介绍
- 文章标签
- 相关推荐
本文共计247个文字,预计阅读时间需要1分钟。
代码简洁,功能直观,无需冗言,直接奉上代码,有需者可参考。
代码很简洁,功能也很简单,这里就不多废话了,直接把代码奉献给大家,有需要的小伙伴可以来参考下
#include <stdlib.h> #include <string.h> #include <stdio.h> /**判断str1是否以str2开头 * 如果是返回1 * 不是返回0 * 出错返回-1 * */ int is_begin_with(const char * str1,char *str2) { if(str1 == NULL || str2 == NULL) return -1; int len1 = strlen(str1); int len2 = strlen(str2); if((len1 < len2) || (len1 == 0 || len2 == 0)) return -1; char *p = str2; int i = 0; while(*p != '\0') { if(*p != str1[i]) return 0; p++; i++; } return 1; } /**判断str1是否以str2结尾 * 如果是返回1 * 不是返回0 * 出错返回-1 * */ int is_end_with(const char *str1, char *str2) { if(str1 == NULL || str2 == NULL) return -1; int len1 = strlen(str1); int len2 = strlen(str2); if((len1 < len2) || (len1 == 0 || len2 == 0)) return -1; while(len2 >= 1) { if(str2[len2 - 1] != str1[len1 - 1]) return 0; len2--; len1--; } return 1; }
欢迎大家自由发挥扩展下
本文共计247个文字,预计阅读时间需要1分钟。
代码简洁,功能直观,无需冗言,直接奉上代码,有需者可参考。
代码很简洁,功能也很简单,这里就不多废话了,直接把代码奉献给大家,有需要的小伙伴可以来参考下
#include <stdlib.h> #include <string.h> #include <stdio.h> /**判断str1是否以str2开头 * 如果是返回1 * 不是返回0 * 出错返回-1 * */ int is_begin_with(const char * str1,char *str2) { if(str1 == NULL || str2 == NULL) return -1; int len1 = strlen(str1); int len2 = strlen(str2); if((len1 < len2) || (len1 == 0 || len2 == 0)) return -1; char *p = str2; int i = 0; while(*p != '\0') { if(*p != str1[i]) return 0; p++; i++; } return 1; } /**判断str1是否以str2结尾 * 如果是返回1 * 不是返回0 * 出错返回-1 * */ int is_end_with(const char *str1, char *str2) { if(str1 == NULL || str2 == NULL) return -1; int len1 = strlen(str1); int len2 = strlen(str2); if((len1 < len2) || (len1 == 0 || len2 == 0)) return -1; while(len2 >= 1) { if(str2[len2 - 1] != str1[len1 - 1]) return 0; len2--; len1--; } return 1; }
欢迎大家自由发挥扩展下

