At 10:31 AM 7/17/98 -0700, you wrote: >However, now we see stuff like: > >trig_data **trg_index; >or >struct trig_data **trig_index; > >In any case, it seems to be a pointer to a pointer. I'm still pretty >newbie to pointers and the like, but I was hoping to finish obuild OLC for >triggers. Any ideas? A structure in memory occupies some amount of space [sizeof(struct blah)], contains your info, and specific structure elements are usually accessed as varname.element (but there are other ways). A pointer to a structure contains (generally) 4 bytes, or however large is needed to store an address on your memory model. (4 byte addressing is good for 32Gig of address space.) This pointer (address) is intended to be the address in memory for where your structure is. sizeof(struct blah *) is probably 4 unless you are on some arcane system. Specific structure elements are accessed generally as pointer->element, however, to correlate this to the previous paragraph, I should point out that this notation is really intended to make things easy. A (perhaps?) more correct syntax to access an element of a structure pointer would be (*pointer).element (but, of course, this generates ugly code). This is just the tip of the pointer iceburg (no pun intended)... you'll be using them without understanding them for quite some time because there are so many nuances of pointers under C. Exercise to the reader: figure out function pointers, as used in command_interpreter(). No response is necessary :) > >BTW, the CircleMUD site hasn't got but one thing uploaded to the >"contrib/code" dir in the past month. First person to upload gets a cookie! You can't upload there, you can only upload into incoming, and someone has to move the file over. +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST