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