第06天C語(yǔ)言(12):類(lèi)型說(shuō)明符

一、概念
/*
 類(lèi)型說(shuō)明符:
  1.說(shuō)明長(zhǎng)度的 (它可以用于修改 類(lèi)型 所占用的存儲(chǔ)空間的大小)
 short;  
    輸出 %hi hd          // 2個(gè)字節(jié) == -2(15)~2(15)-1
 long;   
    輸出 %li ld          // (64位占8個(gè)字節(jié)) 32 位long 占用4個(gè)字節(jié) ,  long long 占用 8個(gè)字節(jié) == -2(63) ~ 2(63)-1
 long long; 
    輸出 %lli %lld    // 8個(gè)字節(jié) == -2(63) ~ 2(63)-1
 用于說(shuō)明數(shù)據(jù)類(lèi)型, 一般情況下 和 int 配合使用
 
 2.說(shuō)明符號(hào)位 (它可以用于修改符號(hào)位)
 unsigned;  (無(wú)符號(hào)) 輸出 %u  . 取值 整數(shù) 和 零
 
 signed;    (有符號(hào)的)          取值 正數(shù) 和 零 以及 負(fù)數(shù)
        如果給變量加上修飾符 signed 代表當(dāng)前變量的取值可以是 正數(shù) / 負(fù)數(shù) /零
        如果給變量加上修飾符 signed 就代表把 二進(jìn)制的最高位作為符號(hào)位
        而且默認(rèn)情況下所有變量都是有符號(hào)的(signed)
 
 3.不同類(lèi)型的說(shuō)明符 可以混合使用
 unsigned short
 signed long
 注意 : 相同類(lèi)型的 說(shuō)明符 不能同時(shí)在一起使用
 */
二躺盛、代碼
#include <stdio.h>
int main()
{
#pragma 1.說(shuō)明長(zhǎng)度的 (short、long彩库、long long)
    // int == 4個(gè)字節(jié) = -2(31)~2(31)-1
//    int num = 32;
    int num = 12345678901; // -539222987
    printf("num = %i\n",num);
    
    // int == 4個(gè)字節(jié) , long int == 8個(gè)字節(jié) == -2(63) ~ 2(63)-1
    long int num2 = 12345678901;
    printf("num2 = %li\n",num2);
    // long int = long
    // 用%li 或者 %ld來(lái)輸出 long類(lèi)型的數(shù)據(jù)
    // C語(yǔ)言不看怎么存, 只看怎么取
    long num3 = 12345678901;
    printf("num3 = %li\n",num3);

    // long long
    // 在64位編譯器, 基本沒(méi)區(qū)別, 但是在32位就有區(qū)別
    // 32 位long 占用4個(gè)字節(jié) ,  long long 占用8個(gè)字節(jié)
    // 注意 : 如果使用 long long 修飾變量, 那么輸出的時(shí)候 需要使用%lli 或者 lld
    long long int num4 = 12345678901;
    printf("num4 = %lli\n",num4);
    printf("long long = %lli ,long = %li\n",sizeof(num4),sizeof(num3));
    
    long long  num5 = 12345678901;
    printf("num5 = %lli\n",num5);

    printf("---\n");
    
    
    // int == 4個(gè)字節(jié) = -2(31)~2(31)-1
    int value = 9; // 0000 1001
    printf("value = %i\n",value);
    
    // short int == 2個(gè)字節(jié) == -2(15)~2(15)-1
    short int value1 = 9; // 0000 1001
    printf("value1 = %i\n",value1);
    
    // short int == short
    // 如果要輸出 short int 類(lèi)型 ,可以使用%hi
    short value2 = 9; // 0000 1001
    printf("value2 = %hi\n",value2);
    
    printf("short = %i, int = %i\n",sizeof(value1),sizeof(value));
    
    printf("---\n");
#pragma 2.說(shuō)明符號(hào)位 (signed / unsigned)
    // signed 有符號(hào)
    // 如果給變量加上修飾符 signed 代表當(dāng)前變量的取值可以是 正數(shù) / 負(fù)數(shù) /零
    // 如果給變量加上修飾符 signed 就代表把 二進(jìn)制的最高位作為符號(hào)位
    // 而且默認(rèn)情況下所有變量都是有符號(hào)的(signed)
    signed int temp = 9; // 正數(shù) / 負(fù)數(shù) / 零 int == -2(31)~2(31)-1
    printf("temp = %i\n",temp);
    
    // unsigned 代表無(wú)符號(hào), 無(wú)符號(hào)就代表當(dāng)前變量的取值可以是 正數(shù) / 零
    // 如果給變量加上修飾符 unsigned , 就代表 "不"把二進(jìn)制的最高位作為符號(hào)位
    // 如果想打印無(wú)符號(hào)的變量 ,只能用%u
    // 注意 : 輸出格式 千萬(wàn)不要使用 %i 去輸出 因?yàn)?i是有符號(hào)的輸出
    unsigned int temp2 = -12;
    printf("temp = %u\n",temp2); // 4294967284
    printf("---\n");

#pragma 3.不同類(lèi)型的說(shuō)明符 可以混合使用
    unsigned long int lyh = 165; // 這個(gè)類(lèi)型 不能是負(fù)數(shù)(unsigned) 并且是一個(gè)8字節(jié)(long)的整型(int)
    printf("lyh %lu\n",lyh);
    
    signed short int lyh1 = 23;
    printf("lyh1 %hi\n",lyh1);
    
//    注意 : 相同類(lèi)型的 說(shuō)明符 不能同時(shí)在一起使用
//    short long int lyh2 = 22; // 錯(cuò)誤寫(xiě)法 相同類(lèi)型不能混合 short  long
//    signed unsigned int lyh3 = 992; // 錯(cuò)誤寫(xiě)法 相同類(lèi)型不能混合 signed unsigned

    return 0;
}
image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末肤无,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子骇钦,更是在濱河造成了極大的恐慌宛渐,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件眯搭,死亡現(xiàn)場(chǎng)離奇詭異窥翩,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)坦仍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)鳍烁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人繁扎,你說(shuō)我怎么就攤上這事幔荒。” “怎么了梳玫?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵爹梁,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我提澎,道長(zhǎng)姚垃,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任盼忌,我火速辦了婚禮积糯,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘谦纱。我一直安慰自己看成,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布跨嘉。 她就那樣靜靜地躺著川慌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪祠乃。 梳的紋絲不亂的頭發(fā)上梦重,一...
    開(kāi)封第一講書(shū)人閱讀 51,182評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音亮瓷,去河邊找鬼琴拧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛寺庄,可吹牛的內(nèi)容都是我干的艾蓝。 我是一名探鬼主播力崇,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼斗塘,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼赢织!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起馍盟,我...
    開(kāi)封第一講書(shū)人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤于置,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后贞岭,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體八毯,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年瞄桨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了话速。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡芯侥,死狀恐怖泊交,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情柱查,我是刑警寧澤廓俭,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站唉工,受9級(jí)特大地震影響研乒,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜淋硝,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一雹熬、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧谣膳,春花似錦竿报、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至犬庇,卻和暖如春僧界,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背臭挽。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工捂襟, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人欢峰。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓葬荷,卻偏偏與公主長(zhǎng)得像涨共,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子宠漩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容