學習C ,對字元的處理

2021-06-21 13:43:53 字數 2579 閱讀 3481

#include

///

/// 對字元操作的類

///

class mybyte

public mybyte::mybyte()

data = 0;

len = 0;

public mybyte::~mybyte()

delete data;

len = 0;

///

/// 給成員變數賦值

///

void mybyte::assign(char* p, int length)

if(data)

delete data;

len = 0;  

}data = new char[length];

len = length;

memcpy(data,p,length);

///

/// 在字元陣列後面新增乙個字元

///

void mybyte::add(char ch)

len++;

char *t = new char[len];

if(data)

memcpy(t,data,len-1);

t[len-1] = ch;

delete data;

data=t;

///

/// 在字元陣列後面新增長度為length的一串字元

///

void mybyte::add(char* s, int length)

len+=length;

char *t = new char[len];

if(data)

memcpy(t,data,len-length);

memcpy(t+len-length,s,length);

delete data;

data=t;

///

///從start起始位除新增乙個字元

///

void mybyte::add(int start, char ch)

delet data;

data = t;

}///

/// 從start起始位處新增一串長度為length的字元

///

void mybyte::add(int start, char* str, int length)

len+=length;

char *t = new char[len];

int j=0;

for(int i=0;imemcpy(t+start,str,length);

i += length;

}  

else

t[i] = data[j++];

}  

delete data;

data = t;

///

/// 移除從start位置開始長為length的字元

///

int mybyte::remove(int start, int length)

if(start+length>len)

return 0;

char *t = new char[len-length];

int j=0;

for(int i=0;iif(istart+length-1)

t[j++] = data[i];

}delete data;

data = t;

len = len-length;

return 1;

///

/// 獲取字元

///

char* mybyte::getdata()

return data;

///

/// 獲取長度

///

int mybyte::getlen()

return len;

///

/// 查詢是否存在字串

///

bool mybyte::find(int start, char* str, int length)

if(start + length > len)

return false;

}char *t = d + start;

for(int i=0;i<=len-length;i++)

int flag = 0;

for(int j=0;jif(flag == 0)

return false;

}///

/// 查詢是否存在字元

///

bool mybyte::find(int start, char ch)

char *t =  data + start;

for(int i=0;ireturn true;

}    

return false;

}///

/// 清空字元陣列

///

void mybyte::clear()

delete data;

data = 0;

len = 0;

C 對字串的各種處理

1 string str3 123abc456 23 str3 str3.substring 0,i 從左邊開始取字串的前i個字元 str3 str3.remove i,str3.length i 4 str3 str3.substring 0,3 5 str3 str3.remove 3,str3...

c 對含有分界字元的字串處理

在各大oj上 小公尺oj尤為突出 經常會出現給定某字串,要求其被某種字元所分割形成整形陣列。例如將1,3,6,4,9,8按 分割為整形陣列。我自己一般用 這兩種方案。方案一 利用輸出流處理,它是通過空格來讀取字元,因此應將分隔符 化為分割符 具體解釋見 getline cin,s int dotnu...

python對字串的處理

去空格及特殊符號 s.strip lstrip rstrip 複製字串 strcpy sstr1,sstr2 sstr1 strcpy sstr2 sstr1 sstr1 strcpy2 print sstr2 連線字串 strcat sstr1,sstr2 sstr1 strcat sstr1 s...