strlen函式
遞迴和非遞迴分別實現strlen .
遞迴:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int strlen(char *str)
{
if (*str == '\0') //當傳入的字串中沒有字元
return 0; //字串長度為0
else
return 1 + strlen(str + 1); /*運用遞迴,每遞迴一次
長度加1,直到遍歷到的'\0'時結束遞迴*/
}
int main() {
char ch[] = "qwertyuiop";
int len = strlen(ch);
printf("%d ", len);
printf("\n");
system("pause");
return 0;
}
非遞迴:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int strlen1(char *str) {
int count = 0;
while (*str++ != '\0') {
count++;
}//這個迴圈體意思是從字串第一個字元起計數,只遇到字串結束標誌'\0’才停止計數
return count;
}
int main() {
char ch[] = "qwertyuiop";
int len = strlen1(ch);
printf("%d ", len);
printf("\n");
system("pause");
return 0;
}
相關文章
- C++中strlen函式C++函式
- [PHP原始碼閱讀]strlen函式PHP原始碼函式
- 三種方法實現strlen函式函式
- strlen函式的模擬實現函式
- 65.C指標---sizeof()函式和strlen()函式常見考指標函式
- 模擬實現字串函式strlen , strcpy ,strcmp字串函式
- C語言-字串函式的實現(一)之strlenC語言字串函式
- c語言的strlen函式計算字元陣列長度不對C語言函式字元陣列
- 每天一個 PHP 語法三字串函式 strcmp、strlen 使用及實現PHP字串函式
- 《細說PHP》中strlen和mb_strlen的區別PHP
- 細說PHP中strlen和mb_strlen的區別PHP
- MySQL函式大全(字串函式,數學函式,日期函式,系統級函式,聚合函式)MySql函式字串
- Oracle 函式大全(字串函式,數學函式,日期函式,邏輯運算函式,其他函式)Oracle函式字串
- 【函式式 Swift】函式式思想函式Swift
- python中id()函式、zip()函式、map()函式、lamda函式Python函式
- 【函式】Oracle函式系列(2)--數學函式及日期函式函式Oracle
- Python 擴充之特殊函式(lambda 函式,map 函式,filter 函式,reduce 函式)Python函式Filter
- sizeof與strlen的區別
- sizeof 與 strlen 的區別
- strlen與sizeof的區別
- 第7章 IF函式 COUNTIF函式 SUMIF函式函式
- 字元函式、數字函式和日期函式字元函式
- 【函式】Oracle EXTRACT()函式與to_char() 函式函式Oracle
- MySQL(四)日期函式 NULL函式 字串函式MySql函式Null字串
- 【函式】ORACLE函式大全函式Oracle
- (譯) 函式式 JS #2: 函式!函式JS
- 核函式 多項式核函式 高斯核函式(常用)函式
- 函式名/函式地址/函式指標函式指標
- 第 8 節:函式-匿名函式、遞迴函式函式遞迴
- lambda匿名函式sorted排序函式filter過濾函式map對映函式函式排序Filter
- js函式 函式自呼叫 返回函式的函式 (閉包)JS函式
- main函式的入口函式AI函式
- (函式)實現strstr函式函式
- 字串函式之Strtok()函式字串函式
- SQL函式之日期函式SQL函式
- Oracle聚合函式/分析函式Oracle函式
- fork函式與vfork函式函式
- 常用函式--時間函式函式