strtol 함수

long strtol(const char * nptr,char **endptr,int base); 정수로 구성한 문자열로 long 형식 값을 구함

입력 매개 변수 리스트

nptr 문자열

endptr 실수를 계산한 다음 위치의 문자열

base 진수

반환 값

정수로 구성한 문자열을 계산한 long 형식 값

strtol 함수는 정수로 구성한 문자열을 계산하여 long 형식 값을 반환합니다. 그리고 계산할 수 없는 문자를 발견하면 두 번째 입력 인자로 받은 endptr이 가리키는 곳에 설정합니다. 특히 세번째 인자로 진수를 선택하면 문자열의 정수를 입력한 진수 체계로 판단하여 계산합니다.

사용 예

//C언어 표준 라이브러리 함수 가이드
//long strtol (const char* str, char** endptr, int base);
//문자열의 정수를 원하는 진수 체계의 정수로 계산하여 출력

#include <stdlib.h>
#include <stdio.h>
int main(void)
{
    char src[100]="123 ff 16 1001";
    char *pos=NULL;
    long value1=0,value2=0,value3=0,value4=0;

    value1 = strtol(src,&pos,10);//10진수로 계산
    value2 = strtol(pos,&pos,16);//16진수로 계산
    value3 = strtol(pos,&pos,8);//8진수로 계산
    value4 = strtol(pos,&pos,2); //2진수로 계산
    printf("%d %d %d %d\n",value1,value2,value3,value4);
    return 0;
}

출력

123 255 14 9