RM新时代网站-首页

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

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

3天內不再提示

【C語言經(jīng)典面試題】sizeof與strlen有什么區(qū)別?

嵌入式物聯(lián)網(wǎng)開發(fā) ? 來源:嵌入式物聯(lián)網(wǎng)開發(fā) ? 作者:嵌入式物聯(lián)網(wǎng)開發(fā) ? 2022-10-05 16:30 ? 次閱讀

C語言經(jīng)典面試題】sizeof與strlen有什么區(qū)別?

這道經(jīng)典的面試題,我來跟你一起聊一聊。

1 面試原題

**根據(jù)你對C語言的掌握情況,請簡要描述下 **sizeofstrlen 的區(qū)別。

2 知識點剖析

在C語言中,sizeof用于求一個變量或符號的內存空間大小,而strlen一般用于求一個字符串的長度,且這個長度是不包括 '\\0'的。

3 示例代碼

為此,我寫了一段測試代碼:

?
#include 
#include 
?
int main(int argc, const char *argv[])
{
char *p = "123456";
?
printf("sizeof(p) = %d\\n", sizeof(p));
printf("strlen(p) = %d\\n", strlen(p));
?
return 0;
}

很簡單,定義了一個字符串,分別使用strlen和sizeof求值;其值為:

image-20220930221317250

通過運行結果,我們可以知道,兩者是不一樣的。

4 總結

  • strlen一般用于對字符串求長度,且不包括'\\0'字符;
  • sizeof一般用于對變量和符號求內存大??;
  • 兩者是有本質區(qū)別的;還有一個注意點就是:sizeof對指針求值時,與機器的字長是相關的。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5082

    文章

    19104

    瀏覽量

    304791
  • C語言
    +關注

    關注

    180

    文章

    7604

    瀏覽量

    136683
  • 嵌入式技術
    +關注

    關注

    10

    文章

    360

    瀏覽量

    35839
  • 字符串
    +關注

    關注

    1

    文章

    578

    瀏覽量

    20506
  • sizeof
    +關注

    關注

    0

    文章

    9

    瀏覽量

    6439
收藏 人收藏

    評論

    相關推薦

    面試題】人工智能工程師高頻面試題匯總:機器學習深化篇(題目+答案)

    ,或者深度學習的框架,還有怎么優(yōu)化模型,這些都是加分項,能有效提高面試通過率。本篇小編整理了一些高頻的機器學習深化方面的面試題,這些題目都是從實際面試中總結出來的,非
    的頭像 發(fā)表于 12-16 13:42 ?1293次閱讀
    【<b class='flag-5'>面試題</b>】人工智能工程師高頻<b class='flag-5'>面試題</b>匯總:機器學習深化篇(題目+答案)

    面試題】人工智能工程師高頻面試題匯總:Transformer篇(題目+答案)

    隨著人工智能技術的突飛猛進,AI工程師成為了眾多求職者夢寐以求的職業(yè)。想要拿下這份工作,面試的時候得展示出你不僅技術過硬,還得能解決問題。所以,提前準備一些面試常問的問題,比如機器學習的那些算法
    的頭像 發(fā)表于 12-13 15:06 ?448次閱讀
    【<b class='flag-5'>面試題</b>】人工智能工程師高頻<b class='flag-5'>面試題</b>匯總:Transformer篇(題目+答案)

    人工智能工程師高頻面試題匯總——機器學習篇

    ,或者深度學習的框架,還有怎么優(yōu)化模型,這些都是加分項,能有效提高面試通過率。本篇小編整理了一些高頻的機器學習方面的面試題,這些題目都是從實際面試中總結出來的,非常具
    的頭像 發(fā)表于 12-04 17:00 ?816次閱讀
    人工智能工程師高頻<b class='flag-5'>面試題</b>匯總——機器學習篇

    同樣是函數(shù),在CC++中有什么區(qū)別

    同樣是函數(shù),在 CC++ 中有什么區(qū)別? 第一個返回值。 C語言的函數(shù)可以不寫返回值類型,編譯器會默認為返回 int。 但是
    的頭像 發(fā)表于 11-29 10:25 ?266次閱讀

    C語言C++中結構體的區(qū)別

    同樣是結構體,看看在C語言C++中有什么區(qū)別?
    的頭像 發(fā)表于 10-30 15:11 ?197次閱讀

    RTOS與Linux到底什么區(qū)別

    很多做嵌入式開發(fā)的小伙伴都存在這樣的疑惑:RTOS與Linux到底什么區(qū)別
    的頭像 發(fā)表于 10-29 09:53 ?419次閱讀

    RV 和ARM什么區(qū)別

    district RV 和ARM什么區(qū)別
    發(fā)表于 06-26 12:41

    PLC編程語言C語言區(qū)別

    在工業(yè)自動化和計算機編程領域中,PLC(可編程邏輯控制器)編程語言C語言各自扮演著重要的角色。盡管兩者都是編程語言,但它們在多個方面存在顯著的區(qū)別
    的頭像 發(fā)表于 06-14 17:11 ?2770次閱讀

    線路板的層和階什么區(qū)別?

    線路板的層和階什么區(qū)別
    的頭像 發(fā)表于 02-23 17:27 ?710次閱讀

    type-c和usb-c什么區(qū)別

    type-c和usb-c什么區(qū)別? Type-C 和 USB-C 都是指同一個連接標準,它使用
    的頭像 發(fā)表于 02-19 10:00 ?2613次閱讀

    SPI和QSPI什么區(qū)別

    SPI和QSPI什么區(qū)別?
    發(fā)表于 02-06 06:12

    plc編程語言c語言的聯(lián)系 c語言和PLC什么區(qū)別

    語言,主要用于開發(fā)各種應用程序。盡管PLC編程語言C語言一些相似之處,但它們之間也存在一些明顯的區(qū)別
    的頭像 發(fā)表于 02-05 14:21 ?4089次閱讀

    vb語言c++語言區(qū)別

    VB語言C++語言是兩種不同的編程語言,雖然它們都屬于高級編程語言,但在設計和用途上有很多區(qū)別
    的頭像 發(fā)表于 02-01 10:20 ?2252次閱讀

    經(jīng)典Linux面試題總結

    絕對路徑用什么符號表示?當前目錄、上層目錄用什么表示?主目錄用什么表示? 切換目錄用什么命令?
    的頭像 發(fā)表于 01-04 11:01 ?364次閱讀

    hdi板與普通pcb什么區(qū)別

    hdi板與普通pcb什么區(qū)別
    的頭像 發(fā)表于 12-28 10:26 ?2796次閱讀
    RM新时代网站-首页