Delphi 學習筆記 指標篇

2021-10-06 19:28:11 字數 1464 閱讀 6838

@:取址運算子;

var intval:integer; 

p:^integer;

new(p); //申請記憶體空間

intval:=24;

p:=@intval; //取變數 intval 的位址賦值給 整形指標,整形指標指向intval的位址

dispose(p);//釋放記憶體

^:指標的引用解析操作符;

var pint:^integer;//取整形指標

new(pint); //

showmessage(inttohex(integer(@pint),8));

pint^:=$ff;

showmessage(inttohex(pint^,4));

1.當它出現在型別識別符號之前,如 ^typename 表示乙個型別,該型別表示指向typename型別變數的指標。

2.當它出現在指標變數之後,如pointer^ 該符號對指標解除參照,也就是說,返回儲存在記憶體位址(該位址儲存在指標中)的值指標指向的資料.

var i: integer; pi: ^integer;  

begin

i := 10;//將10賦值給i

pi := @i;//取i的位址賦值給指標pi

pi^ := 20; //將20賦值給 pi指標指向位址裡面的資料

i := pi^; //取出pi指標指向位址裡面的資料 賦值給i

end;

pint:^string;在這裡將^放在資料型別之前,說明是宣告的字串指標型別,如果想取出指標引用的值的話,就將^放在宣告的型別後就可以了,比如:pint^ ;

想取pint型別的所引用位址的話,就將@放在之前就可以了,比如:@pint;

取指標值的方法,比如y:=p^; 就是指為y賦值指標p裡面的值(資料)

x:=$11;//$是取16進製制 意思是取整數11的十六進製制

edit1.text:=inttostr(x) ;//inttostr整數轉換字串 edit顯示的是17

type

rtestinfo = record //定義乙個結構體 成員只有乙個 age

age:integer;

end;

ptestinfo = ^ rtestinfo; //定義結構體指標

vartest1,test2:ptestinfo; //宣告兩個指標變數

begin

new(test1);//申請空間

test1^.age:=12;

test2:=test1;// 重點 這裡是將test1的位址賦值給test2 說明 test1和 test2指向了同乙個位址,也可以說是將test2儲存了乙份test1的起始位址

dispose(test2);//釋放空間

end;

c 入門學習筆記指標篇上

指標優點 1。為函式提供修改呼叫變元的手段 2。支援c 動態分配子程式 3。可以改善某些子程式的效率 4。為動態資料結構 如二叉樹 鍊錶 提供支援 注 指標為程式引入了一層間接性,可以操控指標而不直接操控物件。1。可操控指標內含的位址也可操控指標所指的物件 2。指標可能並不指向任何物件,寫 pi時,...

delphi學習筆記 TADOQuery

delphi 資料庫查詢 tadoquery 在乙個程式中你會多次查詢資料庫的,因此在你寫的查詢方法中定義乙個區域性的adoquery就可以了,它返回乙個資料集 recordset。最簡單的應用如下 function getdata recordset 獲取一張表中的全部資料 recordset是一...

Delphi指標認識

大家都認為,c語言之所以強大,以及其自由性,很大部分體現在其靈活的指標運用上。因此,說指標是c語言的靈魂,一點都不為過。同時,這種說法也讓很多人 產生誤解,似乎只有c語言的指標才能算指標。basic不支援指標,在此不論。其實,pascal語言本身也是支援指標的。從最初的pascal發展至今的obje...