如何把CString型转为int型的?谢谢

解决方案 »

  1.   

    CString  是一个对象,你可以先转换成字符串LPCTSTR然后在atoi
      

  2.   

    CString    s("1234");
    int        i;
    char       temp[10];

    strcpy(temp, (LPCTSTR)s);
    i = atoi(temp);
      

  3.   

    实验了一下,直接用atoi(CString)也可以
      

  4.   

    int j = 2345;
    char number[5];
    _itoa(j,number,10);
    CString temp;
    temp = number;
      

  5.   

    以上是把int 转换为string
    以下是把string 转换为数值
    /* ATOF.C: This program shows how numbers stored
     * as strings can be converted to numeric values
     * using the atof, atoi, and atol functions.
     */#include <stdlib.h>
    #include <stdio.h>void main( void )
    {
       char *s; double x; int i; long l;   s = "  -2309.12E-15";    /* Test of atof */
       x = atof( s );
       printf( "atof test: ASCII string: %s\tfloat:  %e\n", s, x );   s = "7.8912654773d210";  /* Test of atof */
       x = atof( s );
       printf( "atof test: ASCII string: %s\tfloat:  %e\n", s, x );   s = "  -9885 pigs";      /* Test of atoi */
       i = atoi( s );
       printf( "atoi test: ASCII string: %s\t\tinteger: %d\n", s, i );   s = "98854 dollars";     /* Test of atol */
       l = atol( s );
       printf( "atol test: ASCII string: %s\t\tlong: %ld\n", s, l );
    }Output
    atof test: ASCII string:   -2309.12E-15   float:  -2.309120e-012
    atof test: ASCII string: 7.8912654773d210   float:  7.891265e+210
    atoi test: ASCII string:   -9885 pigs      integer: -9885
    atol test: ASCII string: 98854 dollars      long: 98854
      

  6.   

    直接用atoi或atol就行。转化为float型的用atof.