In C, reading a string token by token

I’m attempting to write an LL(1) Recursive Descent Parser in C using a grammar that was supplied to me. I have a broad notion of how to accomplish this recursively… my problem is that I am unable to begin my implementation. I’m not very comfortable with C, so I’m sure that’s why I’m having problems with this website. To put it simply, I need to be able to read a String like “(1+2)*3” token by token. So, in the example of the String above, I’d first read the “(”, then call something like nextToken() further down the recursive loop, which would give me the “1”.

That said, I’d probably just need to read the first token of the String each that I use “nextToken()” since when I get the value, I’d change the starting string to be the same as it was before, minus the most recently read token. So, for example, I begin with “(1+2)*3”, then call nextToken() on the String, which means I obtain the “(” and the original String is now “1+2)*3”.

My problem is that I don’t know how to implement this in C.