How do I find the index of a character within a string in C?
问题 Suppose I have a string "qwerty" and I wish to find the index position of the e character in it. (In this case the index would be 2 ) How do I do it in C? I found the strchr function but it returns a pointer to a character and not the index. 回答1: Just subtract the string address from what strchr returns: char *string = "qwerty"; char *e; int index; e = strchr(string, 'e'); index = (int)(e - string); Note that the result is zero based, so in above example it will be 2. 回答2: You can also use