一.什么是字節(jié)對齊,為什么要對齊? 現(xiàn)代計算機中內(nèi)存空間都是按照byte劃分的,從理論上講似乎對任何類型的變量的訪問可以從任何地址開始,但實際情況是在訪問特定類型變量的時候經(jīng)常在特 定的內(nèi)存地址訪
一、sizeof的概念 sizeof是C語言的一種單目操作符,如C語言的其他操作符++、--等。它并不是函數(shù)。sizeof操作符以字節(jié)形式給出了其操作數(shù)的存儲大小。操作數(shù)可以是一個表達式或括在括號內(nèi)的類型名。操
C語言的基本規(guī)則是有限的,可把這有限的規(guī)則組合與嵌套起來,就實現(xiàn)了多種多樣的功能。常量與變量本質(zhì)是值,不同的變量只是存儲結(jié)構(gòu)的不通。表達式最終也是一個值,所以可以通用,可以嵌套。指針變量存放的是
緩沖輸入,很早之前就聽說過這個概念,一直不怎么理解。后來,一聽到緩沖,腦子就昏沉沉的。其實,緩沖輸入也沒啥大不了的,只要有打破砂鍋想到底的精神,就能掃除以前所有的似是而非。緩沖輸入(buffe
優(yōu)先級排列:1.優(yōu)先級最高的:并不是真正意義上的運算符 ()改變優(yōu)先級的符號(括號)、GrouPINg operator [] 數(shù)組下標(biāo)操作符 Array aCCess ()函數(shù)調(diào)用操作符 function access ->結(jié)構(gòu)成員選擇操作符
終于說到了指針。指針是C語言的精華部分,如果沒有指針,c語言對底層的許多操作將無法完成。也是因為指針的存在,使得c語言看起來并不那么高級,因為指針操作的對象的是內(nèi)存地址,想要熟練地進行指針操
一、指針是地址各種類型的數(shù)據(jù)被分配合適的內(nèi)存。比如整形數(shù)據(jù)通常被分配兩個連續(xù)的存儲單元(字節(jié))存放。對數(shù)據(jù)的訪問是通過分配給數(shù)據(jù)的內(nèi)存首地址來實現(xiàn)的。我們稱這些內(nèi)存地址為指針。二、指針變量是
1、用statIC、extern可以聲明變量1.1 可用static聲明全局變量和局部變量(包括數(shù)組)。(1)用static聲明的局部變量只能被定義該變量的函數(shù)識別,在退出函數(shù)時該局部變量仍然保持其值,e.g. void temp(){
1、數(shù)組傳遞給函數(shù),模擬傳引用調(diào)用的方式自動把數(shù)組傳遞給函數(shù),意味著被調(diào)用的函數(shù)能夠修改原是數(shù)組的元素值,e.g.int hourly[24];//數(shù)組定義void modify(int [],int );//函數(shù)原型modify(hourly,24);
(1)rand()函數(shù)產(chǎn)生一個0到RAND_MAX之間的整數(shù),產(chǎn)生的是偽隨機數(shù),RAND_MAX>=32767,i=rand();i=1+rand()%data//產(chǎn)生1—data之間的隨機數(shù)(2)srand()函數(shù)產(chǎn)生不同的隨機數(shù)序列,unsigned類型整數(shù)作為
迭代(循環(huán))與遞歸(調(diào)用)對比(1)二者都是建立在控制結(jié)構(gòu)基礎(chǔ)上的,迭代使用的是循環(huán)結(jié)構(gòu),遞歸使用的是選擇機構(gòu);(2)二者都用到了循環(huán),迭代明確使用循環(huán)結(jié)構(gòu),遞歸通過反復(fù)調(diào)用函數(shù)實現(xiàn)循環(huán);(
Intel計劃在下半年正式推出全新的處理器,包括i9-9900K、i7-9700K和i5-9600K,其中i9-9900K處理器將會搭載8核16線程,這同時也是i9首次來到主流平臺,而i7-9700K以及i5-9600K處理器仍然使用的是6核12線程以及6核6線程,和第九代酷睿處理器相配套的將會是全新的Z390主板。
傳值調(diào)用建立參數(shù)的一份拷貝并把它傳給調(diào)用的函數(shù),在調(diào)用函數(shù)中修改參數(shù)值的拷貝不影響原始的變量值;傳引用調(diào)用允許調(diào)用函數(shù)修改原始變量的值。C語言用指針*和間接引用運算符&模擬傳引用調(diào)用,數(shù)組會
CS-51單片機外部RAM的地址空間為64K,地址總線為16位,訪問外接RAM可執(zhí)行如下4條指令:MOVX A,@DPTRMOVX @DPTR,AMOVX A,@RIMOVX @RI,A其中DPTR為16位地址寄存器,地址高8位存于DPH,地址低8位存于DPL;
M1M0工作方式功能描述00工作方式013位計數(shù)器01工作方式116位計數(shù)器10工作方式2自動再裝入8位計數(shù)器11工作方式3定時器0:分成兩個8位計數(shù)器;定時器1:停止計數(shù)定時器/計數(shù)器方式控制寄存器TMOD不能進行