欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言判斷字符串是否以str2開頭代碼

 更新時間:2017年05月21日 09:01:57   作者:青兒哥哥  
這里給大家分享的是一個使用C語言實現(xiàn)的判斷字符串中是否以某字符開頭或者結(jié)尾的代碼,非常的簡單實用,希望大家能夠喜歡

代碼很簡潔,功能也很簡單,這里就不多廢話了,直接把代碼奉獻給大家,有需要的小伙伴可以來參考下

#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結(jié)尾
 * 如果是返回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;
}

歡迎大家自由發(fā)揮擴展下

相關文章

  • C語言數(shù)據(jù)結(jié)構(gòu)之二叉樹詳解

    C語言數(shù)據(jù)結(jié)構(gòu)之二叉樹詳解

    二叉樹(Binary tree)是樹形結(jié)構(gòu)的一個重要類型。許多實際問題抽象出來的數(shù)據(jù)結(jié)構(gòu)往往是二叉樹形式。本文將通過示例詳細講解一下二叉樹,需要的可以參考一下
    2022-03-03
  • c++ 網(wǎng)絡庫asio的優(yōu)勢

    c++ 網(wǎng)絡庫asio的優(yōu)勢

    這篇文章主要介紹了c++ 網(wǎng)絡庫asio的優(yōu)勢,幫助大家更好的利用c++開發(fā)服務端程序,感興趣的朋友可以了解下
    2020-10-10
  • C++移動語義詳細介紹使用

    C++移動語義詳細介紹使用

    首先,移動語義和完美轉(zhuǎn)發(fā)這兩個概念是在C++的模板編程的基礎上,新增的特性,主要是配合模板來使用。本篇會從C++的值類型,到移動拷貝與移動賦值來理解移動語義與完美轉(zhuǎn)發(fā)
    2023-01-01
  • C語言超詳細講解順序表的各種操作

    C語言超詳細講解順序表的各種操作

    大家好,今天給大家?guī)淼氖琼樞虮?,我覺得順序表還是有比較難理解的地方的,于是我就把這一塊的內(nèi)容全部整理到了一起,希望能夠給剛剛進行學習數(shù)據(jù)結(jié)構(gòu)的人帶來一些幫助,或者是已經(jīng)學過這塊的朋友們帶來更深的理解,我們現(xiàn)在就開始吧
    2022-05-05
  • C++使用Kruskal和Prim算法實現(xiàn)最小生成樹

    C++使用Kruskal和Prim算法實現(xiàn)最小生成樹

    這篇文章主要介紹了C++使用Kruskal和Prim算法實現(xiàn)最小生成樹,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • return和break的區(qū)別解析

    return和break的區(qū)別解析

    這篇文章主要介紹了return和break的區(qū)別解析,需要的朋友可以參考下
    2014-02-02
  • C語言數(shù)據(jù)類型轉(zhuǎn)換實例代碼

    C語言數(shù)據(jù)類型轉(zhuǎn)換實例代碼

    本文主要介紹C 語言數(shù)據(jù)類型轉(zhuǎn)換,這里通過代碼實例進行詳解,這是C語言基礎部分,需要的朋友可以參考下
    2016-07-07
  • C/C++位段超詳細整理大全

    C/C++位段超詳細整理大全

    以位為單位來定義結(jié)構(gòu)體中的成員變量所占的空間內(nèi)存,含有位段的結(jié)構(gòu)體稱為位段結(jié)構(gòu),這篇文章主要給大家介紹了關于C/C++位段的相關資料,需要的朋友可以參考下
    2024-01-01
  • 深入HRESULT與Windows Error Codes的區(qū)別詳解

    深入HRESULT與Windows Error Codes的區(qū)別詳解

    本篇文章是對HRESULT與Windows Error Codes的區(qū)別進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C++?requires關鍵字簡單介紹

    C++?requires關鍵字簡單介紹

    requires?是?C++20?中引入的一個新關鍵字,用于在函數(shù)模板或類模板中聲明所需的一組語義要求,它可以用來限制模板參數(shù),類似于?typename?和?class?關鍵字,這篇文章主要介紹了C++?requires關鍵字簡介,需要的朋友可以參考下
    2023-05-05

最新評論