C char* to int conversion

前端 未结 2 382
情深已故
情深已故 2020-12-08 00:37

How would I go about converting a two-digit number (type char*) to an int?

相关标签:
2条回答
  • 2020-12-08 00:48

    atoi can do that for you

    Example:

    char string[] = "1234";
    int sum = atoi( string );
    printf("Sum = %d\n", sum ); // Outputs: Sum = 1234
    
    0 讨论(0)
  • 2020-12-08 01:01

    Use atoi() from <stdlib.h>

    http://linux.die.net/man/3/atoi

    Or, write your own atoi() function which will convert char* to int

    int a2i(const char *s)
    {
      int sign=1;
      if(*s == '-'){
        sign = -1;
        s++;
      }
      int num=0;
      while(*s){
        num=((*s)-'0')+num*10;
        s++;   
      }
      return num*sign;
    }
    
    0 讨论(0)
提交回复
热议问题