在c语言中039是不是int型,C数据类型
C的32個關(guān)鍵字?jǐn)?shù)據(jù)類型關(guān)鍵字(12)char,short,int,long,
float,double,unsigned,signed,
struct,union,enum,void
控制語句關(guān)鍵字(12)if,else,switch,case,
default,for,do,while,
break,continue,goto,return
存儲類關(guān)鍵字(5)auto,extern,register,static,const
其他關(guān)鍵字(3)sizeof,typedf,volatile
常量(在程序運行過程中,其值不能被改變的量)1
2
3
4
5
6
7
8
9#define PI 3.1415926
int (void)
{
const short a=10; /*const 關(guān)鍵字,限定一個變量為只讀(常量)*/
printf("hello world,%dn",a);
return 0;
}#define 宏名 宏值(沒有;即結(jié)束標(biāo)記)(推薦使用宏定義方式定義常量)
匿名常量 “hello”、’A’、9、1.23
const 類型 變量名=變量值。
標(biāo)識符命名規(guī)則(變量和常量的統(tǒng)稱)標(biāo)識符不能是關(guān)鍵字。如 system、main、printf
只能由數(shù)字、字母、下劃線組成 0-9/a-z/A-Z/_
不能以數(shù)字開頭
大小寫嚴(yán)格區(qū)分
變量(在使用前必須先定義,定義前必須有相應(yīng)的數(shù)據(jù)類型)變量三要素:變量類型、變量名、變量值
可以通過其名字和地址訪問相應(yīng)的內(nèi)存
變量聲明和變量定義的區(qū)別:變量定義:給變量在內(nèi)存中開辟存儲空間
變量聲明:不會給變量開辟存儲空間。向系統(tǒng)注冊該變量。
注意:編譯器在編譯至變量賦值處,發(fā)現(xiàn)該變量尚未被定義,會自動尋找變量聲明,將該聲明提升成定義(隱式聲明),如果聲名前有 extern 關(guān)鍵字,則提升失敗。
eg:1
2
3
4
5
6
7
8
9int (void)
{ /*extern關(guān)鍵字只作聲明,不能作任何定義*/
extern int a; /*此處extern聲明一個變量a,沒有分配內(nèi)存空間*/
a=10; /*err,沒有空間,不可賦值*/
int b=10; /*定義一個變量值b,b的類型為int,值為10*/
return 0;
}
進(jìn)制轉(zhuǎn)換(8421碼)
二進(jìn)制(2^0~2^10)
計算機內(nèi)部只采用二進(jìn)制形式進(jìn)行數(shù)據(jù)存儲。
十進(jìn)制轉(zhuǎn)換二進(jìn)制:除基逆取余(除二逆取余)
二進(jìn)制轉(zhuǎn)換十進(jìn)制:按權(quán)展開再相加
8進(jìn)制和16進(jìn)制:以符號位為0表示八進(jìn)制 最大數(shù)值為7 0~7 %o格式符打印
以符號位為0x表示16進(jìn)制 最大數(shù)值為F 0~9 ABCDEF %x、%X格式符打印(大小寫)8進(jìn)制轉(zhuǎn)2進(jìn)制: 04735—–421碼 —–100 111 011 101
2進(jìn)制轉(zhuǎn)8進(jìn)制: 010 100 101 110 101 001 —–024565116轉(zhuǎn)2:0xFAC12 —-8421碼 —-1111 1010 1100 0001 0010
2轉(zhuǎn)16:0001 0100 1011 1010 1001 ———0x14BA91
2
3
4
5
6
7
8
9
10
11int (void)
{
int t = 123; /*十進(jìn)制方式賦值*/
int a = 076; /*定義一個8進(jìn)制數(shù)*/
int b = 0x7a; /*定義一個16進(jìn)制數(shù)*/
printf("十進(jìn)制:%dn",t);
printf("八進(jìn)制:%on",a);
printf("十六進(jìn)制:%xn",b);
return 0;
}
編碼(原反補碼)在計算機系統(tǒng)中,數(shù)值一律用補碼來存儲,主要原因是:統(tǒng)一了零的編碼
將符號位和其他位統(tǒng)一處理
將減法運算轉(zhuǎn)變?yōu)榧臃ㄟ\算
兩個用補碼表示的數(shù)相加是,如果最高位(符號位)有進(jìn)位,則進(jìn)位被舍棄char ch=10;10+(-10)78+(-34)10 原碼: 0000 101078 補碼: 0100 1110
-10原碼: 1000 1010-34原碼: 1010 0010
10 反碼: 0000 1010-34反碼: 1101 1101
-10反碼: 1111 0110-34補碼: 1101 1110
10 補碼: 0000 1010
-10補碼: 1111 0110
10 + (-10)78+(-34)
0000 1010 + 1111 0110 = 0000 00000100 1110 + 1101 1110=0010 1100
整型:int數(shù)據(jù)類型名稱打印格式含義大小示數(shù)范圍int整型變量%d十進(jìn)制整型4字節(jié)-2^31~+2^31-1(-2147483648~+2147483647)
short:短整型變量%hd十進(jìn)制短整型2字節(jié)-2^15~+2^15-1
long長整形%ld十進(jìn)制長整型4字節(jié)不同平臺不同系統(tǒng)中大小不同 4/8
long long長長整型%lld十進(jìn)制長長整型8字節(jié)
無符號整型數(shù)據(jù)類型打印格式含義大小示數(shù)范圍unsigend int%u十進(jìn)制無符號整型4字節(jié)0~2^32-1 (0~4294967295)
unsigend short%hu十進(jìn)制無符號短整型2字節(jié)0~2^16-1
unsigend long%lu十進(jìn)制無符號長整型4字節(jié)不同平臺不同系統(tǒng)中大小不同
unsigend long long%llu十進(jìn)制無符號長長整型8字節(jié)
整型變量的定義和輸出打印格式含義%d輸出一個有符號的10進(jìn)制int類型
%o(字母o)輸出8進(jìn)制int類型
%x輸出16進(jìn)制int類型,字母以小寫輸出
%X輸出16進(jìn)制int類型,字母以大寫輸出
%u輸出一個10進(jìn)制無符號數(shù)
sizeof 關(guān)鍵字sizeof(變量名) ————返回該變量的大小,單位:整數(shù)字節(jié)
sizeof(類型名) ————返回該數(shù)據(jù)類型的大小,單位:整數(shù)字節(jié)sizeof在系統(tǒng)內(nèi)定義為:typedef unsigned int size_t 所以用%u匹配打印
sizeof是C語言的內(nèi)置運算符
sizeof不是函數(shù),它的功能是計算一個數(shù)據(jù)類型的大小,單位是字節(jié)
sizeof的返回值為 size_t
size_t類型在32位操作系統(tǒng)下是unsigned int(無符號整數(shù))1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24int (void)
{
int a = 10;
short b = 20;
long c = 30;
long long d = 40;
printf("a=%dn",a); /* %d匹配int型數(shù)據(jù) */
printf("b=%hdn",b); /* %h匹配short型數(shù)據(jù) */
printf("c=%ldn",c); /* %ld匹配long型數(shù)據(jù) */
printf("d=%lldn",d); /* %lld匹配long long型數(shù)據(jù) */
size_t abc=10; /* size_t類型在32位操作系統(tǒng)下是unsigned int(無符號整數(shù))*/
printf("abc=%un",abc); /* 此處及以下均以無符號整型%u輸出*/
printf("int 型數(shù)據(jù)類型占用內(nèi)存的大小 = %u字節(jié)n",sizeof(int));
printf("short 型數(shù)據(jù)類型占用內(nèi)存的大小 = %u字節(jié)n",sizeof(short));
printf("long 型數(shù)據(jù)類型占用內(nèi)存的大小 = %u字節(jié)n",sizeof(long));
printf("long long 型數(shù)據(jù)類型占用內(nèi)存的大小 = %u字節(jié)n",sizeof(long long));
return 0;
}
字符型:char(本質(zhì)就是一個字節(jié)大小的整型)一個字節(jié)(8 bit)%c 打印 有符號示數(shù)范圍:-128~127(-2^7~+2^7-1) 無符號示數(shù)范圍:0~255(0~2^8-1)
‘0’ : ASCII 值—–48
‘a(chǎn)’ : ASCII 值—–97
‘A’ : ASCII 值—–65
‘ ’: ASCII 值—–0 #define NULL ((void *)0)泛型指針
‘n’: ASCII 值—–10
‘t’: 按8字符做對齊輸出。不足8字符用空格補齊
注意:用單引號引起來的’a’表示字符常量a,雙引號引起來的”a”表示字符串常量。不允許
‘a(chǎn)bc’ 這種寫法
有符號數(shù)和無符號輸?shù)膮^(qū)別:有符號數(shù)最高為符號位,0表示正數(shù),1表示負(fù)數(shù)
轉(zhuǎn)義序列(用于打印無法打印的ASCII字符)轉(zhuǎn)義序列含義ASCII碼值(十進(jìn)制)a警報007
b退格008
f換頁012
n換行010
r回車013
t水平制表符009
v垂直制表符011
反斜杠()092
’單引號039
”雙引號034
?問號063
總結(jié)
以上是生活随笔為你收集整理的在c语言中039是不是int型,C数据类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android nv21图片格式,And
- 下一篇: mysql11导入数据_MySQL专题1