In the last segment, we talked about how you could build new types using the struct mechanism. Basically, a user-defined type, and we illustrated it with how to build a card type. Now let's see how to manipulate such a type. Well, critical to manipulating the type is we have to have the ability to give values to the individual members of that struct, and recall that struct hear, pips and suit. So we have to have a way to access the members. We're going to have two operator types that will allow access to members. We'll have two ways to do it. One will be the dot operator. In a way, it's a little simpler because it's more direct. The second way will be a member access operator arrow. So it indicates it will make use of addressing. Let's show this now. So here we had struct card, we have this declaration, and now we'll declare three different variables; c1, c2, and c2. If we're using the dot operator, all we say is we use the variable c1 which is struct card. That's its type. We dot the member name, pips and then we assign a three. Similarly, we can do that with the suit. In this case, we assign the character value H. So this in our representation is the three of hearts. Pretty straightforward. Remember, you have the variable name and then you dot it with the member name. Then you can manipulate that in a normal way, you can treat that as a naming convention for the field inside or the member inside the struct type. Now the second method is going to be using pointers. There we're going to have struct card pointer type, and we'll use pointer-to-card because pointer to card is alliterate identifier, tells us what it is. We're going to set pointer to card to the address of c1. So in effect, pointer to card is a second way to access c1, is the address of the variable c1. Now, since what we really need to get at is members, we use the arrow operator, and using the arrow operator, we say pointer-to-card, accesses the pips member, set it to five, pointer-to-card, access the suit member, set it to character value S. In this way, c1 would now be a five of spades here. So this involves some a pointer use. That's a little trickier, but it's something you are really going to have to get used to if you're going to master the C programming language. So in summary, there are two ways to access a member, a dot operator on the structure, it gets the member or a pointer operator with the arrow which is an address of the struct and then gets a member. So pointer arrow pointing at a name or dot on the name are the two ways to get at the structure. Now, if we've mastered those ideas, we can combine them in the following sense. If we were to dereference a pointer-to-card, remember is pointing at C1. That means this dereference takes high precedence. It gets us now the card c1 and that can be dotted to suit. So we can get to c1 through a dereferencing of the pointer as well. Now, we're going to show this in real code. But before I show it in real code, I want to also show you because we've used a lot of things here. I want to also show you at this point what we know about the operator precedence table, and that would be useful. So to gain something when you're a beginner in the C programming language, you've got to make sure to study, understand which operators come before other operators. Notice, on the highest precedence in the C operator list, there's the arrow and there's the dot, and they are as high precedence as, for example, postfix auto-increment or function call. That's what that parentheses means there or indexing. Notice, as you go down, you get to the lower and lower levels. Here are all the assignments, they are pretty low. The only thing lower than all the different kinds of assignments is the comma operator. Then you have logical and the special ternary operator is very low. Then up here, you have mathematical operators. For example, multiplication which is higher than addition, and then you have shift and relational operators. So those things are something to keep in mind, but very important to understand how high in precedence a way of getting at a member is, it's at the highest level of precedence.