字符串所占字節(jié)怎么算 如何計(jì)算字符串在內(nèi)存中占用的字節(jié)數(shù)?
如何計(jì)算字符串在內(nèi)存中占用的字節(jié)數(shù)?為了方便C程序判斷字符串是否結(jié)束,系統(tǒng)在每個(gè)字符串常量中添加一個(gè)字符串結(jié)束標(biāo)志,用雙引號(hào)括起來(lái)-“0”null運(yùn)算符,ASCII值為0。所以占用的字節(jié)數(shù)是4如何計(jì)算
如何計(jì)算字符串在內(nèi)存中占用的字節(jié)數(shù)?
為了方便C程序判斷字符串是否結(jié)束,系統(tǒng)在每個(gè)字符串常量中添加一個(gè)字符串結(jié)束標(biāo)志,用雙引號(hào)括起來(lái)-“0”null運(yùn)算符,ASCII值為0。所以占用的字節(jié)數(shù)是4
如何計(jì)算字符串在內(nèi)存中占用的字節(jié)數(shù)?
Strlen()函數(shù),返回字符串的字節(jié)數(shù);例如,#include<stdio。H>intmain(){printf(%dn”,strlen(%1234n”)return0}結(jié)果:5,即“1234n”占用的字節(jié)數(shù)是5
在C語(yǔ)言中,一個(gè)字母字符占用一個(gè)字節(jié)。所以表面上看,它占用了一個(gè)字節(jié)。但是,C語(yǔ)言規(guī)定字符串的結(jié)尾必須后跟一個(gè)結(jié)束字符“0”,因此總共應(yīng)該占用2個(gè)字節(jié)。以此類推,“ABC”是4個(gè)字節(jié)
存儲(chǔ)空間中的字節(jié)數(shù)是11。ABC--3--1個(gè)轉(zhuǎn)義字符NT--2012--1個(gè)八進(jìn)制數(shù)XA1--1個(gè)十六進(jìn)制數(shù)*2--2和一個(gè)字符串結(jié)束字符。總共11個(gè)字節(jié)。Char STR[]=“ABCNT012XA1*2”printf(%d%dn”,strlen(STR),sizeof(STR))//打印字符串的長(zhǎng)度,以及打印占用存儲(chǔ)空間的字節(jié)數(shù)
主要取決于字符串的長(zhǎng)度,一般以字母表示,一個(gè)字母占用一個(gè)字節(jié),如果一個(gè)字符串的長(zhǎng)度是10,它就占用了10個(gè)字節(jié)。
字符串”a“在內(nèi)存占用的字節(jié)數(shù)是多少?為什么?
7字節(jié)--”,a,B,C,D,”,0,共7字節(jié)。您可以使用sizeof(“ ”ABCD”)進(jìn)行驗(yàn)證。