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 are the types of data structure in as400?
what are indicators?
how to define global parameter in ile ?
what would be the effect on the field where reverse image, underline and highlight display attributes are active ?
how many files, printer files you can describe in a rpg?
What Does Lokup Does In Tables & Arrays?
an access path may be in which sequence?
when is a tag statement used in rpg?
what is meant by object lock requests,held locks and locks waiting to be applied(wrkobjlck) why should we apply for locks.Please explain sir.
how to write code for singlepage in sqlrpgle with update ?
define data structure?
what is the maximum number of record formats in dspf?
what is the length of a variable in rpg?
what is the function of crtdupobj command?
is their a difference in cobol400 for the release 5.2 and 6.1 at the as400.