1叨咖、計(jì)算數(shù)組長(zhǎng)度
通常做法:
int array[] = {1, 2, 3盒音, 4};
unsized int count = sizeof(array) / sizeof(typeof(array[0]));
不過(guò)有一個(gè)問(wèn)題达布,如果你要判斷的這個(gè)數(shù)組是作為參數(shù)傳入函數(shù)內(nèi)部的話团甲,上述辦法不可行。
一般是要求同時(shí)傳入數(shù)組長(zhǎng)度的黍聂。否則沒(méi)有辦法躺苦。
2、硬盤(pán)分為:固態(tài)硬盤(pán)(SSD)和機(jī)械硬盤(pán)(HDD)产还;
2.1 匹厘、機(jī)械硬盤(pán):就像VCD或DVD,由一個(gè)精密電機(jī)帶動(dòng)光盤(pán)快速轉(zhuǎn)動(dòng)來(lái)讓探頭讀取和寫(xiě)入數(shù)據(jù)脐区。
2.2愈诚、就像手機(jī)內(nèi)存卡或U盤(pán),內(nèi)部有上億個(gè)電子元器件,非常細(xì)小炕柔,達(dá)到納米級(jí)別酌泰,通過(guò)電路來(lái)讀取和寫(xiě)入數(shù)據(jù)。
3匕累、fflush(stdin);用來(lái)清空輸入緩沖區(qū)陵刹;
在內(nèi)存中,有一塊區(qū)域(比如512字節(jié))專門(mén)用來(lái)保存用戶輸入的數(shù)據(jù)欢嘿,遇到 scanf 時(shí)衰琐,程序會(huì)首先檢查該區(qū)域是否有數(shù)據(jù):
如果沒(méi)有,就等待用戶輸入际插,用戶從鍵盤(pán)輸入的每個(gè)字符都會(huì)暫時(shí)保存到這里碘耳,直到按下回車鍵,輸入結(jié)束框弛,scanf 再?gòu)倪@里讀取數(shù)據(jù)辛辨,賦值給變量。
如果有數(shù)據(jù)瑟枫,哪怕是一個(gè)字符斗搞,scanf 也會(huì)直接讀取,不會(huì)等待用戶輸入慷妙。
這塊內(nèi)存區(qū)域僻焚,就叫做緩沖區(qū)(Buffer),或者緩存(Cache)膝擂;又因?yàn)樗怯脕?lái)暫存用戶輸入的數(shù)據(jù)的虑啤,所以又叫輸入緩沖區(qū)。
緩沖區(qū)與普通的內(nèi)存沒(méi)有什么兩樣架馋,都是物理內(nèi)存上的若干字節(jié)狞山,只是作用不同而已。
4叉寂、C語(yǔ)言關(guān)鍵字及其解釋[共32個(gè)] : c.biancheng.net/cpp/html/797.html
5萍启、實(shí)際上,rand() 函數(shù)產(chǎn)生的隨機(jī)數(shù)是偽隨機(jī)數(shù)屏鳍,是根據(jù)一個(gè)數(shù)按照某個(gè)公式推算出來(lái)的勘纯,這個(gè)數(shù)我們稱之為“種子”,但是這個(gè)種子在系統(tǒng)啟動(dòng)之后就是一個(gè)定值钓瞭,我們需要用 srand() 來(lái)進(jìn)行播種驳遵,即在int a前加一句:srand((unsigned)time(NULL));//這里利用時(shí)間進(jìn)行播種,需要time.h
6山涡、標(biāo)準(zhǔn)C語(yǔ)言(ANSI C)共定義了15 個(gè)頭文件超埋,稱為“C標(biāo)準(zhǔn)庫(kù)”搏讶,所有的編譯器都必須支持佳鳖,如何正確并熟練的使用這些標(biāo)準(zhǔn)庫(kù)霍殴,可以反映出一個(gè)程序員的水平。
合格程序員:stdio.h ctype.h stdlib.h string.h
熟練程序員:assert.h limits.h stddef.h time.h
優(yōu)秀程序員:float.h math.h error.h locale.h setjmp.h signal.h stdarg.h
7系吩、C語(yǔ)言內(nèi)存模型(內(nèi)存組織方式):c.biancheng.net/cpp/html/2857.html
8来庭、