Is string::size() 0-based (i.e. it counts the first character of a string as 0, the second as 1, etc.), or is it 1-based (i.e. it counts the first character of a string as 1, the second as 2, etc.)? I looked in the string reference online, but I wasn't able to find the answer to my question.