在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

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

汽車玩家 ? 來源:嵌入式大雜燴 ? 作者:嵌入式大雜燴 ? 2020-04-04 17:39 ? 次閱讀

sizeof基礎

C語言中,sizeof是一個操作符(operator),而不是函數!其用于判斷數據類型或者表達式長度(所占的內存字節數)。其有兩種表達形式:

(1)sizeof(類型說明符)

(2)sizeof 表達式

我們通常使用第(1)種形式。

其返回值類型為size_t,在頭文件stddef.h中定義。這是一個依賴于編譯系統的值,一般定義為:

typedef unsigned int size_t;

首先確定我們當前編譯環境中C語言各個基本數據類型在內存中所占字節數,我這里是32bit編譯環境:

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

我們這里的輸出結果為:

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

sizeof典型問題

sizeof看起來似乎很簡單,那來看看下面這段代碼,你能做對幾個:

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

實際運行 輸出結果為:

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

簡要分析:

(1)sizeof(char) 的值為1。因為char類型數據在內存中占1字節。

(2)sizeof(char*)的值為4。因為char*代表一個指針,在32bit環境中為4字節,也即unsigned int的字節長度。

(3)sizeof('a')的值為4。因為此處‘a’是獨立存在的一個字符(沒有賦值給其它變量),實際上就是一個整型數,占4個字節,即此處‘a’對應的ascii碼的十進制為整數97。但是需要注意的是,若有如下定義:

char ch = 'a';

則此處ch的字節數sizeof(ch)的值為1,而不是4。

(4)sizeof(*s+0)的值為4,因為'h'+0 轉化為int,占4字節。此處涉及到類型轉換的問題。即不同類型的數據進行運算時,會首先轉換成相同數據類型。轉換規則為(圖片來源于網絡):

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

(5)sizeof(*s)的值為1,因為此處*s為字符串s的第1個字符‘h’(注意與第三點區分開來,這里是有用char來修飾的),所以所占字節長度為1。

(6)sizeof(s)的值為4,同(2),此處s是一個指針,在32bit環境中為4字節,也即unsigned int的字節長度。

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

    關注

    8

    文章

    3103

    瀏覽量

    74918
  • C語言
    +關注

    關注

    180

    文章

    7628

    瀏覽量

    139958
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    必看!15個C語言常見陷阱及避坑指南

    ? C語言雖強大,但隱藏的“坑”也不少!稍不留神就會導致程序崩潰、數據異常。本文整理15個高頻陷阱,助你寫出更穩健的代碼! ? 陷阱1:運算優先級混淆? 問題:運算優先級不同可能導
    的頭像 發表于 03-16 12:10 ?369次閱讀

    全套C語言培訓資料—PPT課件

    全套C語言培訓資料,共427頁,13個章節:C語言概述、程序的靈魂—算法、數據類型 & 運算與表達式、順序程序設計、選擇結構程序設
    發表于 03-12 14:50

    深入理解C語言:循環語句的應用與優化技巧

    在程序設計中,我們常常需要重復執行某一段代碼。為了提高效率和簡化代碼,循環語句應運而生。C語言作為一門經典的編程語言,提供了多種循環控制結構,幫助程序員高效地實現重復
    的頭像 發表于 12-07 01:11 ?468次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:循環語句的應用與優化技巧

    邏輯異或運算在Python中的用法

    在Python編程語言中,邏輯異或運算并不直接作為一個內置的操作符存在,因為Python更側重于高級編程和可讀性,并沒有直接提供異或運算的簡寫形式用于邏輯運算(真/假值的異或)。然
    的頭像 發表于 11-19 09:46 ?653次閱讀

    C語言指針運算詳解

    C語言中,當你有一個指向數組中某個元素的指針時,你可以對該指針執行某些算術運算,例如加法或減法。這些運算可以用來遍歷數組中的元素,如ptr[i]等價于*(ptr + i)。然而,如果你的操作使得指針指向了數組以外的位置(除了數
    的頭像 發表于 10-30 11:16 ?573次閱讀

    技術干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析運算與優先級

    C語言的學習過程中,運算的使用是不可忽視的重要環節。本文將繼續深入探討C語言中的運算,重點
    的頭像 發表于 10-13 08:09 ?479次閱讀
    技術干貨驛站 ▏解鎖<b class='flag-5'>C</b><b class='flag-5'>語言</b>高效編程秘訣:深入解析運算<b class='flag-5'>符</b>與優先級

    技術干貨驛站 ▏深入理解C語言:編程高手必備,全方位解析運算的核心技能!

    C語言的編程領域中,運算是實現數據處理與邏輯操作的關鍵工具。無論是在處理簡單的數值計算,還是在構建復雜的邏輯結構時,運算的使用貫穿始終
    的頭像 發表于 09-18 15:56 ?603次閱讀
    技術干貨驛站 ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:編程高手必備,全方位解析運算<b class='flag-5'>符</b>的核心技能!

    C語言指針詳細解析

    可以對數據本身,也可以對存儲數據的變量地址進行操作。 指針是一個占據存儲空間的實體在這一段空間起始位置的相對距離值。在C/C++語言中,指針一般被認為是指針變量,指針變量的內容存儲的是
    發表于 09-14 10:03

    鴻蒙原生應用元服務開發-倉頡基礎數據類型整數類型

    (十進制)。 整數類型支持的操作 整數類型默認支持的操作符包括:算術操作符、位操作符、關系操作符、自增和自減
    發表于 09-13 14:55

    鴻蒙原生應用元服務開發-倉頡基礎數據類型布爾類型

    let b: Bool = false 布爾類型支持的操作 布爾類型支持的操作符包括:邏輯操作符(邏輯非!,邏輯與 &&,邏輯或 ||)、部分關系操作符
    發表于 09-09 09:57

    c語言中從左到右結合怎么看

    C語言中,操作符的結合性(Associativity)是指當操作符在表達式中連續出現時,它們如何與操作數結合的順序。對于大多數二元
    的頭像 發表于 08-20 11:42 ?1366次閱讀

    c語言從右到左的運算有哪些

    以下是一些主要的從右到左運算的C語言運算: 函數調用運算 ( () ):當您調用一個函數時,參數列表是從右到左進行求值的。 后置遞增運算
    的頭像 發表于 08-20 11:39 ?1597次閱讀

    鴻蒙原生應用元服務開發-初識倉頡開發語言

    復用和生態兼容。 領域易擴展 :倉頡編程語言提供了基于詞法宏的元編程能力,支持在編譯時變換代碼,此外,還提供了尾隨 lambda、屬性、操作符重載、部分關鍵字可省略等特性,開發者可由此深度定制
    發表于 08-15 10:00

    鴻蒙原生應用元服務開發-初識倉頡開發語言

    復用和生態兼容。 領域易擴展 :倉頡編程語言提供了基于詞法宏的元編程能力,支持在編譯時變換代碼,此外,還提供了尾隨lambda、屬性、操作符重載、部分關鍵字可省略等特性,開發者可由此深度定制程序的語法
    發表于 07-30 17:49

    FPGA學習筆記---基本語法

    3、信號類型:wire, reg, tri等 4、參數定義:parameter 5、運算操作符:各種邏輯操作符、移位操作符、算數操作符等 6、比較判斷:if ... else, ca
    發表于 06-23 14:58
    主站蜘蛛池模板: 免费在线播放黄色 | 五月天丁香婷婷网 | 久久夜色精品国产噜噜小说 | 亚洲国产精品自在现线让你爽 | www.四虎.com | 狠狠狠操 | 亚洲精品国产美女在线观看 | 国产成人精品怡红院 | 亚洲黄色高清视频 | 伊人久久大香线蕉综合电影 | 欧美乱xxxxxxxxx | 国产精品久久久久久久牛牛 | www.久久综合| 亚洲福利一区二区三区 | 精品国产免费观看一区高清 | 男人的天堂视频在线 | 日本加勒比视频在线观看 | 手机看片福利日韩国产 | 欧美性猛交xxxx黑人喷水 | 狠狠色噜噜狠狠狠狠五月婷 | 奇米影视777四色米奇影院 | 免费国产黄网站在线观看视频 | 69xxxx日本| 欧美性淫爽www视频播放 | 国产成人精品三级 | 激情丁香网 | 天天综合网久久 | 69色视频| 日本成人小视频 | 天天综合干 | 一区二区三区四区五区 | 亚洲精品美女 | 午夜精品在线 | 午夜h| 日本三级hd高清电影 | 午夜痒痒网 | 久久天天躁综合夜夜黑人鲁色 | 日韩 ed2k| 婷婷色综合久久 | 三级黄色录像 | 欧美日韩中文字幕在线 |