刷題感悟(c)
總結巨集(c)
1.格式:# define 巨集名
2.替換過程如下
.c(源**檔案)->.i(預處理後的中間結果檔案)->.s(彙編**檔案)->.o(目標**檔案)->.out(執行程式)
編譯器替換時不管「」內的東西,是完全的文
本替換,define結尾不用加;,因為他不是
個語句。
3.無值的巨集
#define _ 巨集名
用於條件編譯,有其他的編譯預處理指令,可檢查巨集是否被定義過了。
4.inline函式可替代巨集
變數位址(c)
1.& 變數名
位址用於用乙個值對映空間
& 變數名 通過位址值找到第乙個位元組,通過型別可確定從第乙個位元組開始所對映的空間。
位址值是void*(無型別),位址有型別。
eg:
在計算機中,假設變數x=3,儲存如下
00000000
00000000
00000000
00000011 <--首位元組位址=&x
位址可以進行強制型別轉換
搞清楚起始位址及位址型別
1)位址指向法
*(位址)
2)下標表示法
(&變數)[從變數首址開始上(下)尋幾個
單元]下標運算優先順序最高
#include
intmain()
;//定義乙個int型陣列順便隨便賦幾個值
printf
("%d",*
(a+3))
;printf
("%d"
,a[3])
;printf
("%d",*
((int*)(
&a+1)-
1);/*以上三個輸出為同乙個值,4*/
return0;
}
鍊錶(單向)
接上篇
2.鍊錶的查詢
在鍊錶中查詢某成員值為給定值的結點。
定義乙個查詢函式,返回值為指標型別,返回指向查詢到結點的指標。順序查詢至鍊錶尾還未找到給定值結點,返回空指標。
struct st *
find
(struct st *p)
}return
null
;}
西安郵電大學2020第二屆軟體設計大賽
敲**好快樂,我愛敲**
懇請各位斧正錯誤,提出不足
謝謝各位看官!!
學習筆記 雜湊學習筆記
hash基本原理 hash就是乙個像函式一樣的東西,你放進去乙個值,它給你輸出來乙個值。輸出的值就是hash值。一般hash值會比原來的值更好儲存 更小 或比較。那字串hash就非常好理解了。就是把字串轉換成乙個整數的函式。而且要盡量做到使字串對應唯一的hash值。它的主要思路是選取恰當的進製,可以...
學習筆記 CentOS 學習筆記01
簡單的做個課堂筆記 虛擬機器用的是vmware,系統是centos cd etc sysconfig network scripts pwdls 顯示列表 cat ifcfg eth0 檢視檔案內容 vi ifcfg eth0 進入vi編輯器 onboot no 原始設定 x逐字刪除 d刪除整行 a...
筆記 spring cloud 學習筆記
1 spring cloud 是什麼 spring cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具 例如配置管理,服務發現,斷路器,智慧型路由,微 控制匯流排 分布式系統的協調導致了樣板模式,使用spring cloud開發人員可以快速地支援實現這些模式的服務和應用程式。他們將在任...