C++不使用變量求字符串長度strlen函數(shù)的實現(xiàn)方法
更新時間:2015年06月02日 10:50:44 作者:無影
這篇文章主要介紹了C++不使用變量求字符串長度strlen函數(shù)的實現(xiàn)方法,實例分析了strlen函數(shù)的實現(xiàn)原理與不使用變量求字符串長度的實現(xiàn)技巧,需要的朋友可以參考下
本文實例講述了C++不使用變量求字符串長度strlen函數(shù)的實現(xiàn)方法。分享給大家供大家參考。具體實現(xiàn)方法如下:
1、strlen的源碼實現(xiàn):
size_t strlen(const char *str)
//strlen不做內(nèi)存非法判斷,如果是NULL,會core。
{
const char *eos=str;
while(*eos++);
return (eos-str-1);
}
2、常見面試題會要求不使用額外變量,實現(xiàn)strlen函數(shù):
實現(xiàn)一:
int strlen(const char *str)
{
if('\0'==*str)
return 0;
else
return strlen(str+1)+1;
}
實現(xiàn)二:
int strlen(const char *str)
{
return *str?(strlen(str+1)+1):0;
}
希望本文所述對大家的C++程序設(shè)計有所幫助。
相關(guān)文章
一文帶你了解C語言中static關(guān)鍵字的3個作用
static這個關(guān)鍵字是“靜態(tài)”的意思,在C語言里主要有3個作用。這篇文章主要通過一些簡單示例為大家詳細講講這3個左右,感興趣的小伙伴可以了解一下2023-04-04
C++如何通過Qt反射機制實現(xiàn)數(shù)據(jù)類序列化
在?C++?工程中經(jīng)常需要使用數(shù)據(jù)類,并對數(shù)據(jù)類進行存儲、打印、調(diào)試等操作,所以本文就來聊聊C++如何通過Qt反射機制實現(xiàn)數(shù)據(jù)類序列化吧2025-04-04
Qt數(shù)據(jù)庫應(yīng)用之實現(xiàn)通用數(shù)據(jù)生成器
有兩種應(yīng)用場景需要用到數(shù)據(jù)生成器,一種是需要測試數(shù)據(jù)庫性能,一種是隨機模擬生成一堆數(shù)據(jù),用來測試程序的性能。本文將利用Qt實現(xiàn)通用數(shù)據(jù)生成器,需要的可以參考一下2022-02-02

