首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C語言整型數據全景:常量進制表示、後綴長整/無符號、變量分類與說明規範

     編輯:關於C語言

整型數據:C語言數值計算的基石

整型包括整型常量與變量。常量分十進制、八進制、十六進制三種進制,並通過前綴、後綴區分類型與長度;變量分基本、短、長、無符號四大類,掌握其範圍、字節數與說明規範至關重要。

一、整型常量的進制與前綴

進制前綴合法數碼示例(十進制值)非法示例
八進制00~7015(13) 0101(65) 0177777(65535)256(無0) 03A2(含A) -0127(負號)
十六進制0x/0X0~9,A~F/a~f0X2A(42) 0XA0(160) 0XFFFF(65535)5A(無0x) 0X3H(含H)
十進制無0~9237 -568 65535023(前導0) 23D(含D)

關鍵: 書寫常數時前綴不可錯,否則被誤認為其他進制導致結果錯誤。

二、後綴:長整型與無符號型

16位機基本整型 2 字節,範圍有限。超出範圍需用長整型(4 字節):

注意: 158L 與 158 數值相同,但前者佔 4 字節,後者佔 2 字節,運算與輸出格式需匹配。

無符號後綴 U/u:358u, 0x38Au, 235Lu。前綴後綴可組合:0XA5Lu 表示十六進制無符號長整數。

三、整型變量分類與 Turbo C 範圍表

類型後綴示例(十進制值)
十進制長整數L/l158L, -358000L
八進制長整數L/l012L(10) 077L(63) 0200000L(65536)
十六進制長整數L/l0X15L(21) 0XA5L(165) 0X10000L(65536)
類型說明符含義字節數數值範圍
int / short int / signed int基本/短/有符號整型2-32768 ~ 32767
unsigned int / unsigned無符號基本整型20 ~ 65535
long int / long長整型4-2147483648 ~ 2147483647
unsigned long無符號長整型40 ~ 4294967295

無符號類型與基本/短/長匹配構成三種無符號型,字節數同對應有符號型,但無符號位擴大了正數範圍。

四、變量說明規範

類型說明符 變量名1, 變量名2, ...;
int a, b, c;
long x, y;
unsigned p, q;
  • 一條說明可定義多個同類型變量,逗號分隔。
  • 最後必須以分號結尾。
  • 說明必須在使用之前,通常放在函數體開頭。

五、不同類型變量混合運算與自動轉換


long x=5, y=6;
int a=7, b=8, c, d;
c = x + a;  // long + int → 運算提升為 long,結果賦給 int c(可能截斷)
d = y + b;

不同類型可直接運算、賦值,編譯器自動完成類型轉換(整型提升、算術轉換),但需注意目標類型範圍是否足夠。

六、練習題精選


// 練習1:short/int 混合運算
short d=100; a=d-20; b=a+d; c=a+b+d; d=d-a+c-b;
// 練習2:long/int 運算溢出觀察
long c,d; c=a+b-7; d=a*b*c; c=d*d*d; a=c-d;
// 練習3:unsigned 繞回特性
unsigned c; c=a-b+7; // 6-19+7=-6 → 無符號繞回 65530

熟練掌握進制前綴、長度/無符號後綴、變量分類範圍、說明語法與混合運算轉換規則,是避免溢出、截斷、符號誤解等低級錯誤的關鍵。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved