第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

C碼是多少?

C碼是多少?

C
胡子哥哥 2019-06-25 12:48:03
C碼是多少?我被弄糊涂了size_t在C中,我知道它是由sizeof接線員。但到底是什么?是數(shù)據(jù)類型嗎?假設(shè)我有一個(gè)for循環(huán):for(i = 0; i < some_size; i++)我應(yīng)該用int i;或size_t i;?
查看完整描述

3 回答

?
慕田峪4524236

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超5個(gè)贊

size_t是無符號類型。因此,它不能表示任何負(fù)值(<0)。當(dāng)你在計(jì)算某件事時(shí),你會(huì)使用它,并且確信它不會(huì)是負(fù)面的。例如,strlen()返回size_t因?yàn)樽址拈L度必須至少為0。

在您的示例中,如果循環(huán)索引總是大于0,則使用size_t,或任何其他無符號數(shù)據(jù)類型。

當(dāng)您使用size_t對象,您必須確保在所使用的所有上下文中,包括算術(shù),都需要非負(fù)值。例如,假設(shè)您有:

size_t s1 = strlen(str1);size_t s2 = strlen(str2);

你想找出str2str1..你不能:

int diff = s2 - s1; /* bad */

這是因?yàn)榉峙浣odiff總是一個(gè)正數(shù),即使當(dāng)s2 < s1,因?yàn)橛?jì)算是用無符號類型完成的。在這種情況下,取決于用例是什么,您最好使用int(或long long)s1s2.

C/POSIX中有一些函數(shù)可以/應(yīng)該使用size_t但不要因?yàn)闅v史原因。例如,第二個(gè)參數(shù)fgets理想情況下size_t,但是.int.


查看完整回答
反對 回復(fù) 2019-06-25
?
浮云間

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超4個(gè)贊

size_t可以容納任何數(shù)組索引的類型。

視具體實(shí)現(xiàn)而定,它可以是以下任何一種:

unsigned char

unsigned short

unsigned int

unsigned long

unsigned long long

以下是如何size_t定義為stddef.h我的機(jī)器:

typedef unsigned long size_t;


查看完整回答
反對 回復(fù) 2019-06-25
  • 3 回答
  • 0 關(guān)注
  • 760 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號