那曲檬骨新材料有限公司

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

    文章

    585

    瀏覽量

    20604
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62978
  • 運算符
    +關注

    關注

    0

    文章

    172

    瀏覽量

    11107
收藏 人收藏

    評論

    相關推薦

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

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

    C語言sizeofstrlen的區別

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

    【武漢華嵌】結構體的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 ?7177次閱讀
    字符串函數<b class='flag-5'>strlen</b>的深入研究

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

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

    輪廓儀與粗糙度儀的異同

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

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

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

    C語言模擬實現strlen的步驟

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

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

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

    C語言中strlensizeof的區別

    sizeofstrlen 放在一起考察,題目不難,只要你的C語言基本功扎實,做出來應該沒問題。
    的頭像 發表于 04-23 09:45 ?578次閱讀
    百家乐波音平台导航网| 澳门档百家乐官网的玩法技巧和规则| 澳门百家乐怎样下注| 在线博彩| 赌博百家乐弱点| 百家乐官网断缆赢钱| 伯爵百家乐官网赌场娱乐网规则 | 百家乐赌博技巧大全| 诚信百家乐官网在线平台| 精通百家乐的玩法技巧和规则| 百家乐官网试玩全讯网2| 太阳城洋伞| 做生意仓库和办公桌在家里是不是讲风水 | 我的做生意财位| 百家乐官网赌场赌场平台| 大发888娱乐场怎样下载| 2024年九运的房屋风水| 博彩通天上人间| 全迅网百家乐的玩法技巧和规则| 澳门百家乐官网有没有假| 大发888官网是多少| 足球百家乐投注| 百家乐官网博赌场| 大众娱乐城| 百家乐套利| 太阳城百家乐币| 注册百家乐官网送彩金| 投注平台出租| 博彩旅游业| 百家乐赌博博彩赌博网| 黄金城百家乐游戏| 百家乐官网打鱼秘籍| 百家乐官网玩法教材| 大发888娱乐城888 bg| 广州百家乐娱乐场开户注册 | 百家乐官网代打公司| 龙江县| 爱玩棋牌官方下载| 皇城百家乐娱乐城| 百家乐赌博彩| 百家乐赌场现金网平台排名|