C語言基礎知識

2022-09-03 07:33:09 字數 1319 閱讀 5351

printf函式向終端輸出若干個任意型別的資料。

表示輸出型別的格式字元     格式字元意義

a                    浮點數、十六進製制數字和p-計數法(c99)

a                    浮點數、十六進製制數字和p-計數法(c99)

c       輸出單個字元

d      以十進位制形式輸出帶符號整數(正數不輸出符號)

e      以指數形式輸出單、雙精度實數

e      以指數形式輸出單、雙精度實數

f       以小數形式輸出單、雙精度實數

g     以%f%e中較短的輸出寬度輸出單、雙精度實數,%e格式在指數小於-4或者大於等於精度時使用

g     以%f%e中較短的輸出寬度輸出單、雙精度實數,%e格式在指數小於-4或者大於等於精度時使用

i                    有符號十進位制整數(與%d相同)

o      以八進位制形式輸出無符號整數(不輸出字首o)

p                   指標

s      輸出字串

x      以十六進製制形式輸出無符號整數(不輸出字首ox)

x     以十六進製制形式輸出無符號整數(不輸出字首ox)

u      以十進位制形式輸出無符號整數

printf("%d/n" , i);輸出整型變數i;

memcpy函式

原型:extern void *memcpy(void *dest, void *src, unsigned int count);

用法:#include

功能:由src所指記憶體區域複製count個位元組到dest所指記憶體區域。

說明:src和dest所指記憶體區域不能重疊,函式返回指向dest的指標。

引數說明:dest為目的字串,src為源字串,count為要拷貝的位元組數。

函式功能:將字串src中的前count個位元組拷貝到dest中。

#include #include 

intmain()

結果:d[0]=1.254340,d[1]=32.432430,d[2]=-11.234320

double型別變數為雙精度變數,佔8個位元組,即64位。預設%f輸出時精確到後6位。

float型別變數為單精度變數,佔4個位元組,即32位。

**中double型別陣列s[3]中有3個double型常量,總共佔24個位元組,memcpy(&d[0],s,24);即將陣列s內容從0位址開始拷貝到陣列d中。

C語言基礎知識

1 的問題。int i 1 int j 2 int k i j printf d k 輸出k為3。編譯原理有關編譯器在詞法解析的時候,對於運算子,總是查詢最大的匹配也就是說,i j,編譯器在找到 的時候,它不立即理解為 而是繼續下乙個字元,下乙個字元仍然是 可以組成 再往下的話便是 不成立了。所以i...

C語言基礎知識

一 位元組對齊 位元組對齊的原因,是機器在訪問記憶體中儲存的資料的高效性。通常機器是機器位數為自然邊界來訪問記憶體的,如果乙個4位元組整形數,所在的記憶體不在虛擬記憶體的自然邊界。則cpu需要讀多於一次的資料,這樣就降低了效率。所以,簡單地說,就是保證cpu指令在訪問資料的時候,能一次讀取,而不需要...

C語言基礎知識

1.進製 1 基數 基數為n,代表n進製 2 位權 從個位開始,向左依次編號為0,1.x 分別代表n進 制的x次 3 八進位制以0開頭,十六進製制以0x開頭 4 x 進製轉 進製 按權求和 十進位制轉 x進製 連除倒取餘 2.基本資料型別 3.常量 程式執行期間值不能被改變的量 分為 整型常量,浮點...