unsigned long strtoul(const char *restrict, char **endptr, int base);
:숫자 문자열을 unsigned long 형 숫자로 변환.
(숫자가 아닌 문자를 만날 경우, 그 위치 반환)
restrict: 변환할 문자열
endptr: 숫자로 변환되지 못한 문자열의 시작위치.
base: 문자열로 된 숫자가 몇진수 이냐?
#include <stdlib.h> int main( void) { char *str; char *ptr; unsigned long value; str = "2007forum.falinux.com"; value = strtoul( str, &ptr, 10); // 10진수로 변환 printf( "%s strtoul =%u str=%s\n", str, value, ptr); value = strtoul( str, &ptr, 8); // 8진수로 변환 printf( "%s strtoul =%u str=%s\n", str, value, ptr); value = strtoul( str, &ptr, 16); // 16진수로 변환 // 2007f까지 숫자로 변환 printf( "%s strtoul =%u str=%s\n", str, value, ptr); return 0; }
]$ ./a.out 2007forum.falinux.com strtoul =2007 str=forum.falinux.com // 10진 2007 -> 10진 변환 2007forum.falinux.com strtoul =1031 str=forum.falinux.com // 8진 1031 -> 10진 변환 2007forum.falinux.com strtoul =131199 str=orum.falinux.com // 16진 2007f -> 10진 변환
'Subject > System' 카테고리의 다른 글
alloca (0) | 2016.11.08 |
---|---|
system 함수로 환경변수 실행 (0) | 2016.11.01 |
CentOS] 시간 설정 (0) | 2016.10.16 |
CentOS] yum 이용한 웹서버 설치 (0) | 2016.10.16 |
리눅스] shadow 파일 (0) | 2016.08.07 |