Chuck Reed wrote: > > I have seen a lot of new stuff in C, but one thing is just really escaping > me. I cannot seem to figure out all the *->ch or *->* or whatever. What in > gods name does this "->" mean? I have looked in my on-line C tutorials and > I can't seem to find it. > I don't like flames, but your asking for the "Get a C book" routine. "->" is a structure pointer operator. Most people do have some trouble understanding these as they deal with pointers...another fun subject. The basic definition of these are: structure pointer operator's-- stores or recalls data in a member of a structure POINTED to by a pointer. this means: say we have a structure: struct funky { char name[100]; int age; int StinkyFingerIndicator; }; then: struct funky *cd; //This makes a pointer to a funky structure. then somewhere else in code: j = cd->age; //This says, dereference (figure out) where cd points to, then find the age member...J will equal whatever is in the age member section. I hope i done this all right, I'm sure i prolly messed something up and will look stupid, but hey, that's the basics. You might say, why not just make cd a normal structure instead of a pointer. The reason is this, speed mostly. Say you have a sorting function(qsort comes to mind). If you pass it an actual structure, it will be much slower than if you would pass it a pointer (which is much smaller) to the same function. This also enables you to quickly sort data WITHOUT actually moving the data from wherever it is...you just sort pointers. Well, I suggest if i didn't help much(and even if i did) to find an advanced C book and read very carefully on pointers, "." and "->" as the mud is full of them and you never really touch the power of C unless you fully understand these concepts. Baktor Silvanti +------------------------------------------------------------+ | 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/08/00 PST