精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

strlen和sizeof的異同

撞上電子 ? 2023-12-13 08:00 ? 次閱讀


1,strlen函數

作用: 用于計算以空字符'\0'結尾的字符串的長度,即字符串中的字符個數,不包括空字符本身。

返回值:strlen返回一個size_t類型的值,表示字符串中字符的數量。

注意事項:

  • strlen 需要在運行時遍歷字符串,直到遇到空字符才停止計數。
  • 如果字符串沒有以'\0' 結尾,strlen可能導致未定義的行為。

#include #include
int main() {char str[] = "Hello, World!";size_t length = strlen(str);
printf("Length of the string: %zu\n", length);
return 0;}

2,sizeof運算符

作用:用于獲取變量、數據類型或數組在內存中占用的字節數。
返回值:sizeof返回一個size_t類型的值,表示操作數占用的字節數。
注意事項:

  • sizeof是在編譯時確定的,不需要運行時遍歷數據結構。
  • 對數組使用sizeof可以獲取整個數組的大小,但對指針使用sizeof只能獲取指針本身的大小。

#include
int main() {char str[] = "Hello, World!";size_t size = sizeof(str);
printf("Size of the array: %zu bytes\n", size);
return 0;}

3,異同點

計算方式:strlen遍歷字符串直到遇到空字符。sizeof在編譯時計算大小。
適用對象:strlen適用于以空字符結尾的字符串。sizeof適用于變量、數據類型或數組。返回值:strlen返回字符的數量。sizeof返回字節數。字符串長度:strlen計算字符串長度時不包括空字符。sizeof計算字符串長度時包括空字符。綜上所述,strlen和sizeof在功能和用法上有較大差異,前者主要用于處理字符串的長度,后者用于獲取數據結構在內存中的大小。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 字符串
    +關注

    關注

    1

    文章

    577

    瀏覽量

    20485
  • 函數
    +關注

    關注

    3

    文章

    4307

    瀏覽量

    62432
  • 運算符
    +關注

    關注

    0

    文章

    172

    瀏覽量

    11066
收藏 人收藏

    評論

    相關推薦

    【C語言進階】數組名和指針使用sizeof有什么不同?

    本文介紹一個比較常見的錯誤,是跟sizeof有關的,不知你是否有掌握呢?
    的頭像 發表于 10-03 17:53 ?2637次閱讀
    【C語言進階】數組名和指針使用<b class='flag-5'>sizeof</b>有什么不同?

    C語言sizeofstrlen的區別

    大家好,我是嵌入式老林,從事嵌入式軟件開發多年,今天分享的內容是C語言sizeofstrlen的區別,希望能對你有所幫助
    發表于 07-11 11:51 ?1279次閱讀

    【武漢華嵌】結構體的sizeof問題

    ; //sizeof 對象; 注意:sizeof是一個運算符,在C語言中是一個關鍵字,并不是函數,要和strlen區分開來。sizeof是求取所占的存儲空間的所有字節數。
    發表于 03-22 16:26

    strlensizeof區別

    1.strlen(char*)函數求的是字符串的實際長度,它求得方法是從開始到遇到第一個'\0',如果你只定義沒有給它賦初值,這個結果是不定的,它會從aa首地址一直找下去,直到遇到'\0'停止。char aa[10];cout
    發表于 02-10 10:44

    GD32與STM32異同

    一、 GD32 與 STM32 異同1.相同點1)外圍引腳定義:相同型號的管腳定義相同2) Cortex M3 內核:STM32F103 內核 R1...
    發表于 08-04 09:34

    sizeofstrlen函數的區別在哪

    野指針是指指針指向的位置是不可知的,主要成因是什么?sizeofstrlen函數的區別在哪?鏈表和數組的區別在哪?
    發表于 12-24 07:19

    flash和EEPROM的異同是什么?

    FLASH有哪些類型?flash和EEPROM的異同是什么?
    發表于 01-20 06:15

    Android和Linux系統的異同點是什么?

    Android和Linux系統的異同點是什么?
    發表于 03-02 07:17

    字符串函數strlen的深入研究

    本系列是為了剖析crt庫中intel模塊下的那些函數的,那么我們去找找那里面有沒有strlen的實現,呀!居然找到了,它就位于VC/crt/src/intel/strlen.asm里。打開看看,咦
    的頭像 發表于 03-26 16:01 ?7104次閱讀
    字符串函數<b class='flag-5'>strlen</b>的深入研究

    sizeofstrlen到底有什么區別經典C語言面試題講解

    基本定義1、sizeof是C/C++中的一個運算符,其作用是返回一個對象或者類型在內存中所占用的字節數。 注意:sizeof后面如果是類型則必須加括號,如 sizeof(char);而如果是變量名
    的頭像 發表于 02-03 08:24 ?7228次閱讀

    輪廓儀與粗糙度儀的異同

    有些朋友搞不清楚輪廓儀和粗糙度儀的異同,今天就給大家科普一下二者的異同
    發表于 12-02 14:50 ?2408次閱讀

    C語言的sizeof操作符基礎和經典問題

    在C語言中,sizeof是一個操作符(operator),而不是函數!其用于判斷數據類型或者表達式長度(所占的內存字節數)。其有兩種表達形式:
    的頭像 發表于 04-04 17:39 ?2662次閱讀
    C語言的<b class='flag-5'>sizeof</b>操作符基礎和經典問題

    C語言模擬實現strlen的步驟

    strlen所作的僅僅是一個計數器的工作,它從內存的某個位置(可以是字符串開頭,中間某個位置,甚至是某個不確定的內存區域)開始掃描,直到碰到第一個字符串結束符’\0’為止,然后返回計數器值(長度不包含’\0’)。
    的頭像 發表于 06-29 15:48 ?1463次閱讀
    C語言模擬實現<b class='flag-5'>strlen</b>的步驟

    電感和磁珠的異同及應用綜述

    電感和磁珠的異同及應用綜述
    發表于 06-24 10:28 ?30次下載

    C語言中strlensizeof的區別

    sizeofstrlen 放在一起考察,題目不難,只要你的C語言基本功扎實,做出來應該沒問題。
    的頭像 發表于 04-23 09:45 ?500次閱讀