void main( void )
{
   char *s; double x; int i; long l;   s = "  -2309.12E-15";    
   x = atof( s );
   printf( "atof : 文字列: %s\t浮動小数点値: %e\n", s, x );   s = "7.8912654773d210";  
   x = atof( s );
   printf( "atof : 文字列: %s\t浮動小数点値: %e\n", s, x );   s = "  -9885 pigs";      /* atoi のテスト */
   i = atoi( s );
   printf( "atoi : 文字列: %s\t\t整数値      : %d\n", s, i );   s = "98854 dollars";     /* atol のテスト */
   l = atol( s );
   printf( "atol : 文字列: %s\tlong整数値  : %ld\n", s, l );
}

解决方案 »

  1.   

    如果字符串里面只包含数字和点,你可以这样做
    UINT i=0;
    for(int n=0;n<str.GetLength();n++)
    {
        i=i*10+str.GetAt(n)-48;
    }
      

  2.   

    用函数atoi( s )
    给你一个例子
    void main( void )
    {
      char *s; double x; int i; long l;  s = "  -2309.12E-15";    
      x = atof( s );
      printf( "atof : 文字列: %s\t小数点値: %e\n", s, x );  s = "7.8912654773d210";  
      x = atof( s );
      printf( "atof : 文字列: %s\t小数点値: %e\n", s, x );  s = "  -9885 pigs";     
      i = atoi( s );
      printf( "atoi : 文字列: %s\t\t整数値      : %d\n", s, i );  s = "98854 dollars
      l = atol( s );
      printf( "atol : 文字列: %s\tlong整数値  : %ld\n", s, l );
    }
      

  3.   

    COleVariant var(strValue);
    var.ChangeType(VT_I4);
    int iVal=V_I4(&var);
      

  4.   

    CString s="my name"
    int i;
    i=atoi(s);