不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦>學(xué)習(xí)英語>專業(yè)英語>計算機英語>

c中sizeof的用法

時間: 長思709 分享

  c中sizeof的用法你知道嗎?下面小編就跟你們詳細介紹下c中sizeof的用法,希望對你們有用。

  c中sizeof的用法如下:

  學(xué)習(xí)C/C++有時會遇到下面的情況:

  已知 char *str1="absde";

  char str2[]="absde";

  char str3[8]={'a',};

  char str4 [] = "0123456789";

  為什么sizeof(str1)=4

  sizeof(str2)=6;

  sizeof(str3)=8;

  sizeof(str4)=11;呢? 丈二和尚摸不著頭腦,接下來我們一起好好討論討論,sizeof()到底是怎么一回事。

  首先咱們說明一點,char類型變量在內(nèi)存中占一個字節(jié),所以sizeof(char)是1,這點咱們學(xué)C/C++的應(yīng)該很好理解。

  str1是一個指針變量,它只是指向了字符串"absde"而已。sizeof(str1)既不是字符串占的空間長度,也不是字符數(shù)組占的空間長度,而是一個字符型指針占的空間,所以sizeof(str1)=sizeof(char*)=4(因為在C/C++中一個指針占4個字節(jié))。

  str2是一個字符型數(shù)組。C/C++規(guī)定,對于一個數(shù)組,返回這個數(shù)組占的總空間,所以sizeof(str2)取得的是字符串"absde"占的總空間。"absde"中,共有a b s d e

c中sizeof的用法

時間: 長思709 分享

  c中sizeof的用法你知道嗎?下面小編就跟你們詳細介紹下c中sizeof的用法,希望對你們有用。

  c中sizeof的用法如下:

  學(xué)習(xí)C/C++有時會遇到下面的情況:

  已知 char *str1="absde";

  char str2[]="absde";

  char str3[8]={'a',};

  char str4 [] = "0123456789";

  為什么sizeof(str1)=4

  sizeof(str2)=6;

  sizeof(str3)=8;

  sizeof(str4)=11;呢? 丈二和尚摸不著頭腦,接下來我們一起好好討論討論,sizeof()到底是怎么一回事。

  首先咱們說明一點,char類型變量在內(nèi)存中占一個字節(jié),所以sizeof(char)是1,這點咱們學(xué)C/C++的應(yīng)該很好理解。

  str1是一個指針變量,它只是指向了字符串"absde"而已。sizeof(str1)既不是字符串占的空間長度,也不是字符數(shù)組占的空間長度,而是一個字符型指針占的空間,所以sizeof(str1)=sizeof(char*)=4(因為在C/C++中一個指針占4個字節(jié))。

  str2是一個字符型數(shù)組。C/C++規(guī)定,對于一個數(shù)組,返回這個數(shù)組占的總空間,所以sizeof(str2)取得的是字符串"absde"占的總空間。"absde"中,共有a b s d e \0六個字符,所以str2數(shù)組的長度是6,所以sizeof(str2)=6*sizeof(char)=6。

  str3已經(jīng)定義成了長度是8的數(shù)組,所以sizeof(str3)為8。

  str4和str2類似,'0' '1' ... '9'加上'\0'共11個字符,所以str4占的空間是11。

  總之,對于指針,sizeof操作符返回這個指針占的空間,一般是4個字節(jié);而對于一個數(shù)組,sizeof返回這個數(shù)組所有元素占的總空間。char*與char[]容易混淆,我們一定要分清,而且char*="aaa"的寫法現(xiàn)在不被提倡,應(yīng)予以避免。

  而strlen不區(qū)分是數(shù)組還是指針,就讀到\0為止返回長度。而且strlen是不把\0計入字符串的長度的。

六個字符,所以str2數(shù)組的長度是6,所以sizeof(str2)=6*sizeof(char)=6。

  str3已經(jīng)定義成了長度是8的數(shù)組,所以sizeof(str3)為8。

  str4和str2類似,'0' '1' ... '9'加上'

c中sizeof的用法

時間: 長思709 分享

  c中sizeof的用法你知道嗎?下面小編就跟你們詳細介紹下c中sizeof的用法,希望對你們有用。

  c中sizeof的用法如下:

  學(xué)習(xí)C/C++有時會遇到下面的情況:

  已知 char *str1="absde";

  char str2[]="absde";

  char str3[8]={'a',};

  char str4 [] = "0123456789";

  為什么sizeof(str1)=4

  sizeof(str2)=6;

  sizeof(str3)=8;

  sizeof(str4)=11;呢? 丈二和尚摸不著頭腦,接下來我們一起好好討論討論,sizeof()到底是怎么一回事。

  首先咱們說明一點,char類型變量在內(nèi)存中占一個字節(jié),所以sizeof(char)是1,這點咱們學(xué)C/C++的應(yīng)該很好理解。

  str1是一個指針變量,它只是指向了字符串"absde"而已。sizeof(str1)既不是字符串占的空間長度,也不是字符數(shù)組占的空間長度,而是一個字符型指針占的空間,所以sizeof(str1)=sizeof(char*)=4(因為在C/C++中一個指針占4個字節(jié))。

  str2是一個字符型數(shù)組。C/C++規(guī)定,對于一個數(shù)組,返回這個數(shù)組占的總空間,所以sizeof(str2)取得的是字符串"absde"占的總空間。"absde"中,共有a b s d e \0六個字符,所以str2數(shù)組的長度是6,所以sizeof(str2)=6*sizeof(char)=6。

  str3已經(jīng)定義成了長度是8的數(shù)組,所以sizeof(str3)為8。

  str4和str2類似,'0' '1' ... '9'加上'\0'共11個字符,所以str4占的空間是11。

  總之,對于指針,sizeof操作符返回這個指針占的空間,一般是4個字節(jié);而對于一個數(shù)組,sizeof返回這個數(shù)組所有元素占的總空間。char*與char[]容易混淆,我們一定要分清,而且char*="aaa"的寫法現(xiàn)在不被提倡,應(yīng)予以避免。

  而strlen不區(qū)分是數(shù)組還是指針,就讀到\0為止返回長度。而且strlen是不把\0計入字符串的長度的。

'共11個字符,所以str4占的空間是11。

  總之,對于指針,sizeof操作符返回這個指針占的空間,一般是4個字節(jié);而對于一個數(shù)組,sizeof返回這個數(shù)組所有元素占的總空間。char*與char[]容易混淆,我們一定要分清,而且char*="aaa"的寫法現(xiàn)在不被提倡,應(yīng)予以避免。

  而strlen不區(qū)分是數(shù)組還是指針,就讀到

c中sizeof的用法

時間: 長思709 分享

  c中sizeof的用法你知道嗎?下面小編就跟你們詳細介紹下c中sizeof的用法,希望對你們有用。

  c中sizeof的用法如下:

  學(xué)習(xí)C/C++有時會遇到下面的情況:

  已知 char *str1="absde";

  char str2[]="absde";

  char str3[8]={'a',};

  char str4 [] = "0123456789";

  為什么sizeof(str1)=4

  sizeof(str2)=6;

  sizeof(str3)=8;

  sizeof(str4)=11;呢? 丈二和尚摸不著頭腦,接下來我們一起好好討論討論,sizeof()到底是怎么一回事。

  首先咱們說明一點,char類型變量在內(nèi)存中占一個字節(jié),所以sizeof(char)是1,這點咱們學(xué)C/C++的應(yīng)該很好理解。

  str1是一個指針變量,它只是指向了字符串"absde"而已。sizeof(str1)既不是字符串占的空間長度,也不是字符數(shù)組占的空間長度,而是一個字符型指針占的空間,所以sizeof(str1)=sizeof(char*)=4(因為在C/C++中一個指針占4個字節(jié))。

  str2是一個字符型數(shù)組。C/C++規(guī)定,對于一個數(shù)組,返回這個數(shù)組占的總空間,所以sizeof(str2)取得的是字符串"absde"占的總空間。"absde"中,共有a b s d e \0六個字符,所以str2數(shù)組的長度是6,所以sizeof(str2)=6*sizeof(char)=6。

  str3已經(jīng)定義成了長度是8的數(shù)組,所以sizeof(str3)為8。

  str4和str2類似,'0' '1' ... '9'加上'\0'共11個字符,所以str4占的空間是11。

  總之,對于指針,sizeof操作符返回這個指針占的空間,一般是4個字節(jié);而對于一個數(shù)組,sizeof返回這個數(shù)組所有元素占的總空間。char*與char[]容易混淆,我們一定要分清,而且char*="aaa"的寫法現(xiàn)在不被提倡,應(yīng)予以避免。

  而strlen不區(qū)分是數(shù)組還是指針,就讀到\0為止返回長度。而且strlen是不把\0計入字符串的長度的。

為止返回長度。而且strlen是不把

c中sizeof的用法

時間: 長思709 分享

  c中sizeof的用法你知道嗎?下面小編就跟你們詳細介紹下c中sizeof的用法,希望對你們有用。

  c中sizeof的用法如下:

  學(xué)習(xí)C/C++有時會遇到下面的情況:

  已知 char *str1="absde";

  char str2[]="absde";

  char str3[8]={'a',};

  char str4 [] = "0123456789";

  為什么sizeof(str1)=4

  sizeof(str2)=6;

  sizeof(str3)=8;

  sizeof(str4)=11;呢? 丈二和尚摸不著頭腦,接下來我們一起好好討論討論,sizeof()到底是怎么一回事。

  首先咱們說明一點,char類型變量在內(nèi)存中占一個字節(jié),所以sizeof(char)是1,這點咱們學(xué)C/C++的應(yīng)該很好理解。

  str1是一個指針變量,它只是指向了字符串"absde"而已。sizeof(str1)既不是字符串占的空間長度,也不是字符數(shù)組占的空間長度,而是一個字符型指針占的空間,所以sizeof(str1)=sizeof(char*)=4(因為在C/C++中一個指針占4個字節(jié))。

  str2是一個字符型數(shù)組。C/C++規(guī)定,對于一個數(shù)組,返回這個數(shù)組占的總空間,所以sizeof(str2)取得的是字符串"absde"占的總空間。"absde"中,共有a b s d e \0六個字符,所以str2數(shù)組的長度是6,所以sizeof(str2)=6*sizeof(char)=6。

  str3已經(jīng)定義成了長度是8的數(shù)組,所以sizeof(str3)為8。

  str4和str2類似,'0' '1' ... '9'加上'\0'共11個字符,所以str4占的空間是11。

  總之,對于指針,sizeof操作符返回這個指針占的空間,一般是4個字節(jié);而對于一個數(shù)組,sizeof返回這個數(shù)組所有元素占的總空間。char*與char[]容易混淆,我們一定要分清,而且char*="aaa"的寫法現(xiàn)在不被提倡,應(yīng)予以避免。

  而strlen不區(qū)分是數(shù)組還是指針,就讀到\0為止返回長度。而且strlen是不把\0計入字符串的長度的。

計入字符串的長度的。

540582