Difference between revisions of "^"

From Lazarus wiki
Jump to navigationJump to search
m (add missing gap)
m
Line 5: Line 5:
  
 
For any data type, a [[Pointer|pointer]] type for that data can be declared using the operator <syntaxhighlight lang="pascal" enclose="none">^</syntaxhighlight> in front of the data type.
 
For any data type, a [[Pointer|pointer]] type for that data can be declared using the operator <syntaxhighlight lang="pascal" enclose="none">^</syntaxhighlight> in front of the data type.
 +
 +
 +
 +
 +
  
 
<syntaxhighlight lang="pascal" line highlight="6-7,11,21-22">
 
<syntaxhighlight lang="pascal" line highlight="6-7,11,21-22">

Revision as of 17:42, 3 April 2018

English (en) suomi (fi) русский (ru)

^

In ASCII the character code decimal 94 (or hexadecimal 5E) is defined to be ^ (circumflex accent).

For any data type, a pointer type for that data can be declared using the operator ^ in front of the data type.




 1program pointerDemo(input, output, stderr);
 2
 3type
 4	listItem = record
 5		data: integer;
 6		// next _points_ _to_ a list item
 7		next: ^listItem;
 8	end;
 9
10var
11	start: ^listItem;
12
13begin
14	new(start);
15	if not assigned(start) then
16	begin
17		writeLn(stderr, 'obtaining memory for start failed');
18		halt(1);
19	end;
20	
21	// _de-reference_ the pointer, follow it
22	start^.data := 7;
23	
24	dispose(start);
25end.


navigation bar: topic: Pascal symbols
single characters

+ (plus)  •  - (minus)  •  * (asterisk)  •  / (slash)
= (equal)  •  > (greater than)  •  < (less than)
. (period)  •  : (colon)  •  ; (semi colon)
^ (hat)  •  @ (at)
$ (dollar sign)  •  & (ampersand)  •  # (hash)
' (single quote)

character pairs

<> (not equal)  •  <= (less than or equal)  •  := (becomes)  •  >= (greater than or equal)

 •  >< (symmetric difference)  •  // (double slash)