Answer Posted / szeke
As i know pointers are only simple memory adresses stored in variables. There are many situation they can be used, not only passing parameters. APIs from C, dynamically allocated variables, structures.
A %TRIMR can be a pointer in the original field instead of building another instance of it. Working with orbital buffers, parsing them, break into separated fields, from another ILE language or module can be received and send by a number of pointers instead of copy the value.
Doing anything with a pointer value doesn't point to the correct location is a pointer error. All the data types represent pointers anyway, but they maintained by the compiler, not by the programmer. To forget freeing unused pointed memory areas is another type of error. The use of pointers can cause such errors like invalid data, or memory leaks, since the compiler has no idea what we store on that variable, it must believe we're right. In java, the compiler strictly checks an array out of bound pointer operation, in C++ i have the right to browse the whole memory from a simple a[2] defined array by adressing it as a[12345]. Also no expensive type checkings, so the performance is better.
I can erase a value, or don't even initialize it in the memory but the pointer will still exist and pointing into a non-defined value.
The instruction pointer is also a pointer, can be manipulated by GOTO jumps, or Subs, OOP programming languages are just abstract definitions over the same thing, basically every procedure will be called by its pointer in the memory, determined by compiler or the user, in compile time or run-time... It is called procedure pointer. To point into a variable instead of a PROC is another serious error...
So, what is the question exactly?
| Is This Answer Correct ? | 0 Yes | 0 No |
Post New Answer View All Answers
what is a join logical file?
what is the purpose of dynslt keyword?
What is the use of jdftval in as400?
how many printer files maximum can be used in single rpg program?
how to toggle between single line and multi - line display of a particular record in a subfile?
WHICH REPLY CODE IS USED BT sftp ? ... (e.g.226 is used by FTP IF FILE IS TRANSFERED)
what is *iso date format?
which are the member types which seu supports?
What is the Difference between command attention key and command function key ?
how to read database records without locking them?
what is the favicon.ico request that my site receives now and then?
when do you explicitly open files and close files in an rpg program?
how do u compile rpgle program?
define what a data area is along with a brief example of what it may be used for?
Explain The Keywords Edtcde & Edtwrd?