/* ********************************************************************** */
// ?int?a2i(const?char?*s)?函數原形?
// 功能:?把s所指向的字符串轉換成int類型;
// 返回值:字符串的轉換值。
//
// ?double?a2f(const?char?*s)?函數原形?
// 功能:?把s所指向的字符串轉換成double類型;
// 返回值:字符串的轉換值。
/* ********************************************************************** */

int ?a2i( const ? char ? * s)
{

????
int ?sign = 1 ,num = 0 ;?
????
if ( * s == ' - ' )
????????sign
=- 1 ;
????
else ? if ( * s == ' + ' )
????????sign
= 1 ;
????s
++ ;

????
while (( * s) != ' \0 ' )
????
{
????????num
= num * 10 + ( * s - ' 0 ' );
????????s
++ ;
????}
????
????
return ?num * sign;
}


double ?a2f( const ? char ? * s)
{
????
bool ?bDot = false ;
????
double ?result = 0 ;
????
int ?sign = 1 ;
????
if ?( * s == ' - ' )
????
{
????????sign
=- 1 ;
????}

????
else ? if ( * s == ' + ' )
????
{
????????sign
= 1 ;
????}

????s
++ ;
????
????
double ?temp = 1 ;

????
while ?(( * s) != ' \0 ' )
????
{
????????
if ( * s == ' . ' )
????????
{bDot = true ;s ++ ;}


????????
if ?( ! bDot)
????????
{
????????????result
= result * 10 + ( * s - ' 0 ' );
????????}

????????
else
????????
{
????????????temp
*= 10 ;
????????????result
= result + ( * s - ' 0 ' ) / temp;
????????}

????????s
++ ;
????}


????
return ?sign * result;

}