出處:
自己實現一下:
#include #include #define invalid 0
#define true 1
#define false 0
typedef int bool;
//o(m*n)方法 找字串是否都在原字串中出現
bool findsubstrfunc1(const char *str, const char *substr)
} if (*str == '\0')
} return true;
}//沒有寫排序函式,這裡僅僅假設傳來的兩個字串都經過排序了 o(m*n)以下
bool findsubstrfunc2(const char *str, const char *substr)
if (*str == *substr)
if ( *str > *substr )
} if (*str == '\0' && *substr != '\0')
else
}//o(m+n)方法,用陣列,或者hash表 找字串 是否都在原字串出現
bool findsubstrfunc3(const char *str, const char *substr)
; for (;*str != '\0'; ++str)
for (; *substr != '\0'; ++substr) }
return true;
}#define shift 3
#define mask 0x07
void setbit(char *hash, int bit)
void clearbit(char *hash, int bit)
char testbit(char *hash, int bit)
//用bitmap 方法 找字串看是否都在原字串中
bool findsubstrfunc3_bitmap(const char *str, const char *substr)
; for (; *str != '\0'; ++str)
for (; *substr != '\0'; ++substr)
return true;
}//找出字串中 第乙個只出現一次的字元,dcldallf 就列印'd'乙個
; for (; *str != '\0'; ++str)
else
} return false;
}//字串拷貝 由呼叫者保證目標buf有足夠位置
void strcopy(char *des, const char *src)
//下面是別人實現的一種方式,你沒有想到,以後要記得 這種拷貝的函式 很多要弄成鏈式的
//10分
//為了實現鏈式操作,將目的位址返回,加3分!
char * strcpy( char *strdest, const char *strsrc )
第二章 字元和字串處理
一 tchar c text a tchar szbuffer 100 text a string 無論使用ansi還是unicode字元,編譯器都能通過編譯。二 在使用winexec和openfile呼叫的地方,應該用createprocess和createfile呼叫來代替。三 應當遵循的基本準...
求職寶典 第二章 字串
1.字串與子串 子串行 字串是由零個或多個字元組成的有限序列,子串的定義是串中任意個連續的字元組成的子串行,並規定空串是任意串的子串,任意串是其自身的子串,2.c風格字串 c 語言通常通過 char const char 型別的指標來 c語言中的風格字串。一般來說,我們使用指標的算數操作符來遍歷 c...
第二章簡單動態字串
1.sds的定義 在redis中的字串並不是使用c語言中的char陣列儲存,而是自定義了乙個結構體sds來儲存。redis set msg hello world ok integer 3 在上述例子中,不管是key還是val都是使用sds型別儲存。free屬性的值為0,表示這個sds沒有分配任何未...