请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
思路:若开始有+-号,string++;+.123是正确的;.只能出现一次;e,E之后可以紧跟+-号,但之后不能出现.;e,E后必须有数字。
1 class Solution { 2 public: 3 bool isNumeric(char* string) 4 { 5 if(string==NULL) return false; 6 int flagpoint=0; 7 int flagE=0; 8 int flagnum=0; 9 int flagsign=0; 10 if(*string=='+'||*string=='-') 11 string++; 12 while(*string!='