题目描写叙述
请实现一个函数用来推断字符串是否表示数值(包含整数和小数)。比如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 可是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
解题思路:
这道题没什么别的技巧,依照数值的表示规则,逐个扫描字符串,看是否符合要求。
数值有例如以下几种情况:
1、正负数,首位能够有‘+’ 和 ‘-’ 符号;
2、小数
3、科学计数法,符号‘e’ 或 ‘E’ 。注意 e 或 E 之后仅仅能是整数(能够有正负数)
实现细节见代码
实现代码:
<span style="font-size:18px;"> class Solution { public: bool isNumeric(char* string) { if(string == nullptr) return false; if(*string == '+' || *string == '-') string++; if(*string == '