用法:size_t strlen(const char *s)。返回字串s的長度,不包括結尾的「\0」。
#include #include int main(int argc,char *argv)
/*result:
strlen=5
sizeof=6
*/
#include #include int mylen(const char *s)
return indx;
}int main(int argc,char *argv)
/*result:
strlen=5
sizeof=6
*/
用法:int strcmp(const char *s1,const char *s2)。比較兩個字串大小,返回:0:s1==s2; 1:s1>s2; -1:s1例項1:strcmp用法
#include #include int main(int argc,char *argv)
/*result:
0*/
#include #include int main(int argc,char *argv)
/*result:
-1*/
例項2:
#include #include int mycmp(char *s1,char *s2)
else if(s1[idx]=='\0')
idx++;
} return s1[idx]-s2[idx];
}int main(int argc,char *argv)
/*result:
-32*/
例項3:
#include #include int mycmp(char *s1,char *s2)
return s1[idx]-s2[idx];
}int main(int argc,char *argv)
/*result:
-32*/
例項4:
#include #include int mycmp(char *s1,char *s2)
return *s1-*s2;
}int main(int argc,char *argv)
/*result:
-32*/
strcpy usage: char* strcpy(char* restrict dst,const char *restrict src)
function: 把src的字串拷貝到dst
restrict表明src和dst不重疊
返回dst,目的是為了能連起**來
複製乙個字串:
char* dst=(char*)malloc(strlen(src)+1); //加1是因為每個字串結尾都有『\0』
strcpy(dst,src)
例項1:
#include #include char* mycpy(char* dst,char* src)
dst[idx]='\0'; //字串結尾的'\0'要單獨給
return dst;
}int main(int argc,char *argv)
例項2:用指標實現
#include #include char* mycpy(char* dst,char* src)
*dst='\0'; //字串結尾的'\0'要單獨給
return *ret;
}int main(int argc,char *argv)
例項3:指標優化
#include #include char* mycpy(char* dst,char* src)
int main(int argc,char *argv)
字串中找字元
char* strchr(const char*s,int c);
char* strrchr(const char*s,int c);
返回null,表示沒有找到
例項1: 查詢第乙個l
#include #include int main(int argc,char *argv)
//result:llo
例項2:查詢第二個字母l
#include #include int main(int argc,char *argv)
//result:lo
例項3:從右邊查詢l
#include #include /*
*/int main(int argc,char *argv)
//result:lo
例項4:將p中的內容拷貝到t
#include #include int main(int argc,char *argv)
//result:llo
例項5:
#include #include #include /*
*/int main(int argc,char *argv)
//result:he hello
字串中找字串
char * strstr(const char *s1, const char *s2); //在s1中查詢s2,如果找到返回首個s2的首位址
char * strcasestr(const char *s1, const char *s2); //在s1中查詢s2,不區分大小寫,找到則返回首個s2的首位址
#includechar *mycat(char *dest,const char *str)
while(*dest++=*str++)
return *dest;
}int main(void)
char *mycpy(char *a, char *b)
while(*a++=*b++)
return a;
}
c語言字串函式總結
1.字串連線函式strcat extern char strcat char dest,const char src include 把src所指向的字串 包括 0 複製到dest所指向的字串後面 刪除 dest原來末尾的 0 要保證 dest足夠長,以容納被複製進來的 src。src中原有的字元不...
C語言 字串函式總結
陣列和指標 陣列和指標的區別 字串陣列 指標和字串 字串輸入 scanf 函式 字串輸出 字串函式 ctype.h中的函式 寫在前面 本文基於上課所用ppt及 c primer plus 第6版,也是多源於此。字串函式一直是本人弱項,終於熬過了考試周,來總結一下為c語言的期末機試做準備。字串 以 空...
C語言字串函式總結(部分常見字串函式)
1.atoi 函式 將字串轉換成整數 標頭檔案 include stdlib.h 定義函式 int atoi const char nptr 函式說明 atoi 會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,而再遇到非數字或字串結束時 0 才結束轉換,並將結果返回。...