芒果iOS開發sizeof和strlen的區別

2021-07-06 02:40:58 字數 867 閱讀 7322

在c語言中sizeof()函式和strlen()函式都可以求字串長度,那麼這兩個函式有什麼區別呢,下邊為大家介紹:

首先定義乙個字元陣列:

char name[20] = ;
這是乙個有20個字元的陣列,也可以稱它為字串。因為字串是以『\0』,系統會幫你自動新增上『\0』結束符。

下邊用sizeof求一下字串長度:

int count = sizeof(name) / sizeof(char);

printf("count = %d",count);

輸出結果:

可以看出來當用sizeof輸出字串長度的時候是吧包括'\0'在內的空字元也輸出了。

下邊用strlen()求一下字串的長度:

在這裡用strlen求字串長度的時候需要注意的是strlen求出的長度型別是unsigned long型別,需要用%lu轉義字元。

strlen求出的字串長度是11。

結論:在求字串長度的時候,sizeof求的是所有字串的長度,包括『『\0』以及空字元;而strlen求出的字串長度是以'\0'為結束標示的。在遇到'\0'結束返回'\0'之前的字串長度。

IOS開發 url編碼和解碼

1.url編碼 ios中http請求遇到漢字的時候,需要轉化成utf 8,用到的方法是 nsstring encodingstring urlstring stringbyaddingpercentescapesusingencoding nsutf8stringencoding 2.url解碼 請...

IOS開發 xib和storyboard的混用

1.從xib的viewcontroll中啟動storyboard 或者 從乙個storyboard切換到另乙個storyboard ibaction openstoryboard id sender 2.從storyboard切換到xib loginviewcontroller loginviewc...

ios開發之 複製和貼上

摘要 uipasteboard有系統級別和應用級別兩種型別,所以不僅可以在應用程式內通訊,還能在應用程式間通訊,比如我複製乙個url,然後開啟safari,貼上到位址列去,而我們可以在應用程式間通訊 共享資料。全域性使用 系統級別 uipasteboard pasteboard uipasteboa...