使用C語言對字串操作的分裝

2021-08-10 08:13:01 字數 3129 閱讀 8886

使用c語言對字串操作的分裝

封裝字串函式

#include"字串.h"

//拷貝字串 追加到乙個字串中

char *mystrcat(char *dest,const

char *copystring)

else

while(*copystring!='\0')

*dest='\0';

return first_addr;

}}//在尾部增加字元

void endaddchar(mystring *string,char ch)else

}//增加字串

void endaddstring(mystring *string,char*str)

else

}void run(mystring *string)

//實現strcpy 功能,

//直接拷貝, 將乙個字串完整的拷貝到 乙個指標裡

//const 防止意外被修改

char *mystrcpy(char *dest,const

char *source)

//儲存首位址

char *first_add= dest;

while(*source != '\0')

//字串結尾

*dest='\0';

return first_add;

}//求字串長度

int mystrlen(char *p)

int length=0;

while(*p != '\0')

return length;

}void init(mystring *string)

//開闢長度,內清零

void init_with_length(mystring *string,int length)

//初始化並拷貝

void init_with_strting(mystring *string, char *copystring)

//列印字串

void printfstring(mystring *string)

char *mystrchr(const

char *dest,char ch)

else

else

}return dest;

}}//查詢第一字元 有bug

char *findfirstchar(mystring *string,const

char ch)

char *mystrstr(const

char *const dest,const

char *const findstr)

char *destbak =dest;

char *p=null;//儲存找到的位址

while(*destbak!='\0')

findstrbak++;

nowdestbak++;

}else

}if(flag==1)

destbak++;

}return null;

}char *findfirststring(mystring *string,char *str)

int deletefirstchr(mystring *string,char ch)

char *p=mystrchr(string->p,ch);

if(p==null)

char *pnext=p+1;

while(*pnext != '\0')

*p='\0';//字串必須要有 \0 結尾

return1;}

int deletefirststring(mystring *string,char *str)

char *prestr=mystrstr(string->p,str);

if(prestr==null)

int length=mystrlen(str);

char *pnext=prestr+length;//

while(*pnext != '\0')

*prestr='\0';//字串必須要有 \0 結尾

return

1;}

標頭檔案(字串.h)

#include

#include

#include

#include

struct cstring;

typedef

struct cstring mystring;//簡寫

void init(mystring *string);//原封不動初始化

//開闢長度,內清零

void init_with_length(mystring *string,int length);

//初始化並拷貝

void init_with_strtinfg(mystring *string, char *copystring);

//列印字串

void printfstring(mystring *string);

//增加字串 尾部 任意位置

//尾部增加

void endaddchar(mystring *string,char ch);

void endaddstring(mystring *string,char *str);

void run(mystring *string);

//拷貝字串

//void mystrcat(char *dest,char *copystring);

//查詢一字元 第一次出現位置

char *findfirstchar(mystring *string,char ch);

char *findfirststring(mystring *string,char *str);

//刪除字元

int deletefirstchr(mystring *string,char ch);

int deletefirststring(mystring *string,char *str);

C語言對字串的操作

重點 c語言中對字串的熟練掌握 1 字串遍歷 1 計算出字串的長度 2 判斷字串結束標誌 0 2 陣列一定有確定的空間 3 陣列的輸入方法 1 scanf s adress 2 gets adress 4 陣列的輸出方法 1 printf s adress 2 puts address 5 5道簡單...

C語言對字串的操作,拼接,複製,逆序輸出

include include 轉化 2019年8月26 void copy char from,char to 字元的複製 return k char stringcat char to,char form 兩個字串拼接一起 char strininverse char pre 逆序排列 for ...

C語言對 不定長 字串陣列的遍歷

一般來說,c語言的陣列的初始化可以通過三種方式 在宣告時使用,如 int a 10 使用memset,memset array,0,sizeof array 用for迴圈賦值c語言的陣列可以這樣宣告,int a 即不用事先計算長度,但是通過初始化的值的數量來自動判斷其長度。另外,對於這種宣告方式,便...