برنامه ای میخوام که کار تابع strspn ,strcspn را بدون استفاده از خود توابع انجام بده - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

برنامه ای میخوام که کار تابع strspn ,strcspn را بدون استفاده از خود توابع انجام بده

0 امتیاز
برنامه ای به زبان c میخوام که کار تابع strspn, strcspn را انجام بده
سوال شده اردیبهشت 31, 1399  بوسیله ی zahraf80 (امتیاز 12)   1 1 1
دوباره تگ گذاری شد اردیبهشت 31, 1399 بوسیله ی BlueBlade

2 پاسخ

+1 امتیاز
 
بهترین پاسخ

تابع strspn :

size_t strspn(const char* cs, const char* ct) {
  size_t n;
  const char* p;
  for(n=0; *cs; cs++, n++) {
    for(p=ct; *p && *p != *cs; p++)
      ;
    if (!*p)
      break;
  }
  return n;
}

 

تابع strcspn  :

#include <stdio.h>    
size_t myStrspn(const char *str1, const char *str2){
  size_t i,j;
  i=0;

  while(*(str1+i)){
    j=0;
    while(*(str2+j)){
      if(*(str1+i) == *(str2+j)){
        break; //Found a match.
      }
      j++;
    }
    if(!*(str2+j)){
      return i; //No match found.
    }
    i++;
  }
  return i;
}

void main(){
  char s[] = "7803 Elm St.";
  int n = 0;
  n = myStrspn(s,"1234567890");
  printf("The number length is %d. \n",n);
}

 

پاسخ داده شده اردیبهشت 31, 1399 بوسیله ی مریم اکرمی (امتیاز 482)   26 55 66
انتخاب شد خرداد 22, 1399 بوسیله ی farnoosh
0 امتیاز

سلام؛ برای اینکه بتونید پیاده‌سازی این توابع رو ببینید، از پیاده‌سازی Musl برای LibC استفاده کنید :

https://www.musl-libc.org/

مثلاً برای تابع strcspn :

https://git.musl-libc.org/cgit/musl/tree/src/string/strcspn.c

پاسخ داده شده اردیبهشت 31, 1399 بوسیله ی mg_ramezani (امتیاز 727)   1 1 12
ویرایش شده اردیبهشت 31, 1399 بوسیله ی mg_ramezani
...