如果传入的字符串是负号开头的,经过if语句后,指针已经向后移了一位了,所以进入while循环得到的数绝对是整数,最后flag=-1,返回flag*s ,结果一定是负数。望采纳!
q是一个字符指针,if是检测该数是否是负数,是的话则将flag变为-1。s则是一个正数,因为在检测到负号后q++了,也就相当于跳过了负号;最后s*flag得到结果