09.10.2014 Views

download pascal tutorial (pdf - Tutorials Point

download pascal tutorial (pdf - Tutorials Point

download pascal tutorial (pdf - Tutorials Point

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

To check for a nil pointer, you can use an if statement as follows:<br />

if(ptr nill )then (* succeeds if p is not null *)<br />

if(ptr = nill)then (* succeeds if p is null *)<br />

Pascal <strong>Point</strong>ers in Detail:<br />

<strong>Point</strong>ers have many but easy concepts and they are very important to Pascal programming.<br />

There are following few important pointer concepts, which should be clear to a Pascal<br />

programmer:<br />

Concept<br />

Pascal - <strong>Point</strong>er arithmetic<br />

Pascal - Array of pointers<br />

Pascal - <strong>Point</strong>er to pointer<br />

Passing pointers to<br />

subprograms in Pascal<br />

Return pointer from<br />

subprograms in Pascal<br />

Description<br />

There are four arithmetic operators that can be used on<br />

pointers: increment, decrement, +, -<br />

You can define arrays to hold a number of pointers.<br />

Pascal allows you to have pointer on a pointer and so on.<br />

Passing an argument by reference or by address both enable<br />

the passed argument to be changed in the calling subprogram<br />

by the called subprogram.<br />

Pascal allows a subprogram to return a pointer.<br />

<strong>Point</strong>er arithmetic<br />

As explained in main chapter, Pascal pointer is an address, which is a numerical value<br />

stored in a word. Therefore, you can perform arithmetic operations on a pointer just as you<br />

can on a numeric value. There are four arithmetic operators that can be used on pointers:<br />

increment, decrement, +, and -.<br />

To understand pointer arithmetic, let us consider that ptr is an integer pointer, which points<br />

to the address 1000. Assuming 32-bit integers, let us perform the increment operation on<br />

the pointer:<br />

Inc(ptr);<br />

Now, after the above operation, the ptr will point to the location 1004 because each time<br />

ptr is incremented, it will point to the next integer location, which is 4 bytes next to the<br />

current location. This operation will move the pointer to next memory location without<br />

impacting actual value at the memory location. If ptr points to a character, whose address<br />

is 1000, then above operation will point to the location 1001 because next character will be<br />

available at 1001.<br />

TUTORIALS POINT<br />

Simply Easy Learning Page 93

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!